Marcel Taeumel uploaded a new version of Kernel to project The Trunk: http://source.squeak.org/trunk/Kernel-mt.1518.mcz
==================== Summary ====================
Name: Kernel-mt.1518 Author: mt Time: 9 August 2023, 3:24:15.725576 pm UUID: 8260fcb3-5465-1b43-a2bc-4d045c933398 Ancestors: Kernel-mt.1517
Fixes #hasInstVarRef, now that we have compiled blocks embeddded.
=============== Diff against Kernel-mt.1517 ===============
Item was added: + ----- Method: CompiledBlock>>hasInstVarRef (in category 'scanning') ----- + hasInstVarRef + + self flag: #discuss. "mt: Should we move up more of the scanning protocol from CompiledMethod to CompiledCode? See senders of #hasInstVarRef and implementor in Context." + ^ self method hasInstVarRef!
Item was changed: ----- Method: CompiledMethod>>hasInstVarRef (in category 'scanning') ----- hasInstVarRef + "Answer whether the receiver references an instance variable." - "Answer whether the method references an instance variable."
+ | printer | - | scanner end printer | - - scanner := InstructionStream on: self. printer := InstVarRefLocator new. + self codeLiteralsDo: [:compiledCode | | scanner end | + scanner := InstructionStream on: compiledCode. + end := compiledCode endPC. + [scanner pc <= end] whileTrue: [ + (printer interpretNextInstructionUsing: scanner) ifTrue: [^true]]]. + ^ false! - end := self endPC. - - [scanner pc <= end] whileTrue: [ - (printer interpretNextInstructionUsing: scanner) ifTrue: [^true]. - ]. - ^false!
packages@lists.squeakfoundation.org