Eliot Miranda uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-eem.1108.mcz==================== Summary ====================
Name: Kernel-eem.1108
Author: eem
Time: 23 June 2017, 11:35:28.572002 am
UUID: dd3439ca-404b-4d0d-bb11-529ed86a96eb
Ancestors: Kernel-nice.1107
Implement messagesDo: using ifAbsentAdd:
=============== Diff against Kernel-nice.1107 ===============
Item was changed:
----- Method: CompiledMethod>>messagesDo: (in category 'scanning') -----
messagesDo: aBlock
"Evaluate aBlock exactly once with all the message selectors sent by me."
| scanner aSet |
self isQuick ifTrue: [ ^self ].
- aSet := nil.
scanner := InstructionStream on: self.
scanner scanFor: [ :x |
| selector |
(selector := scanner selectorToSendOrSelf) == scanner ifFalse: [
+ ((aSet ifNil: [ aSet := IdentitySet new ]) ifAbsentAdd: selector) ifTrue: [
- ((aSet ifNil: [ aSet := IdentitySet new ]) addNewElement: selector) ifTrue: [
aBlock value: selector ] ].
false "keep scanning" ]!