[squeak-dev] The Trunk: Kernel-mt.1443.mcz

commits at source.squeak.org commits at source.squeak.org
Wed Jan 26 07:27:37 UTC 2022

Marcel Taeumel uploaded a new version of Kernel to project The Trunk:

==================== Summary ====================

Name: Kernel-mt.1443
Author: mt
Time: 26 January 2022, 8:27:24.209127 am
UUID: be651821-32ae-dd44-8e1d-7bdbdbb65cf0
Ancestors: Kernel-mt.1442

Further improve commentary on #becomeForward: whose behavior is changed since 4/15/2020, that is, after the Squeak 5.3 release.

Thanks to Vanessa (codefrau) for the pointer!

=============== Diff against Kernel-mt.1442 ===============

Item was changed:
  ----- Method: Object>>becomeForward: (in category 'system primitives') -----
  becomeForward: otherObject 
  	"Primitive. All variables in the entire system that used to point to the receiver now point to the argument. Fails if either argument is an immediate such as a SmallInteger, or if the receiver is read-only.
+ 	NOTE THAT the #identityHash of the receiver IS NOT copied to the argument so that hashed structures that contain the argument are still properly indexed BUT the ones with the receiver MUST BE rehashed. See implementors of #rehash and #becomeForward:copyHash:.
+ 	NOTE THAT before 4/15/2020, the hash of the receiver was indeed copied over to the argument."
- 	NOTE THAT the identityHash of the receiver IS NOT copied to the argument so that the argument should still be properly indexed in any existing hashed structures after the mutation. See #becomeForward:copyHash:."
  	{self} elementsForwardIdentityTo: {otherObject}!

More information about the Squeak-dev mailing list