Andreas Raab uploaded a new version of Kernel to project The Trunk: http://source.squeak.org/trunk/Kernel-ul.312.mcz
==================== Summary ====================
Name: Kernel-ul.312 Author: ul Time: 1 December 2009, 4:19:45 am UUID: 5b9007f4-b0f3-1e42-bf32-5a0efbeaae0f Ancestors: Kernel-nice.307
Added #scaledIdentityHash. Part 1 of updating Object >> hash.
=============== Diff against Kernel-nice.307 ===============
Item was added: + ----- Method: SmallInteger>>scaledIdentityHash (in category 'comparing') ----- + scaledIdentityHash + "For identityHash values returned by primitive 75, answer + such values times 2^18. Otherwise, match the existing + identityHash implementation" + + ^self!
Item was added: + ----- Method: ProtoObject>>scaledIdentityHash (in category 'comparing') ----- + scaledIdentityHash + "For identityHash values returned by primitive 75, answer + such values times 2^18. Otherwise, match the existing + identityHash implementation" + + ^self identityHash * 262144 "bitShift: 18"!
Item was changed: ----- Method: Object>>hash (in category 'comparing') ----- hash "Answer a SmallInteger whose value is related to the receiver's identity. May be overridden, and should be overridden in any classes that define = "
+ CollectionRehashingUtility quickRehashBecause: #objectHashChanged. + ^self scaledIdentityHash! - ^ self identityHash!
squeak-dev@lists.squeakfoundation.org