Eliot Miranda uploaded a new version of Compiler to project The Trunk:
http://source.squeak.org/trunk/Compiler-eem.367.mcz==================== Summary ====================
Name: Compiler-eem.367
Author: eem
Time: 5 January 2018, 9:27:53.33704 pm
UUID: 27d11be7-248b-4525-958e-20cfc05779b3
Ancestors: Compiler-eem.366
Uh, no. reindexingLiteralsDo: does have to deal with the selectorSet specially.
=============== Diff against Compiler-eem.366 ===============
Item was changed:
----- Method: BytecodeEncoder>>reindexingLiteralsDo: (in category 'code generation') -----
reindexingLiteralsDo: aBlock
| savedNodes saveBlock |
savedNodes := IdentityDictionary new.
saveBlock := [:node| savedNodes at: node put: node shallowCopy].
litSet do: saveBlock.
litIndSet do: saveBlock.
selectorSet do: saveBlock.
^aBlock ensure:
[| restoreBlock |
restoreBlock := [:node| node resetFromCopy: (savedNodes at: node)].
litSet do: restoreBlock.
litIndSet do: restoreBlock.
+ selectorSet do: [:node| node resetFromCopy: (savedNodes at: node ifAbsent: [node])]]!
- selectorSet do: restoreBlock]!