The Trunk: MethodMassage-dtl.71.mcz

[email protected]
Newsgroups gmane.comp.lang.smalltalk.squeak.general
Message-ID <[email protected]>
David T. Lewis uploaded a new version of MethodMassage to project The Trunk:
http://source.squeak.org/trunk/MethodMassage-dtl.71.mcz

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

Name: MethodMassage-dtl.71
Author: dtl
Time: 10 May 2026, 4:49:49.186657 pm
UUID: 06b25161-0bbf-4861-b500-11592dfae901
Ancestors: MethodMassage-dtl.70

Fix for MessageMassageTest errors when running with EncoderForV3PlusClosures.
The errors are raised by an assert check in ByteCodeAssembler>>spanToBlockLabel: which checks that the bytecode preceding a block label is a return bytecode. Add #methodReturnSpecialConstant to the list of possible returns.

=============== Diff against MethodMassage-dtl.70 ===============

Item was changed:
  ----- Method: BytecodeAssembler>>spanToBlockLabel: (in category 'assembly') -----
  spanToBlockLabel: label "<Association>"
  	"N.B. Block labels are expected to follow the last bytecode
  	 in the block and preceed the bytecode following the block."
  	| labelIndex |
  	labelIndex := label value.
  	labelIndex ifNil:
  		[labelIndex := code instructions identityIndexOf: label.
  		 label value: labelIndex].
  	self assert: (labelIndex > 1
  				and: [(self isLabel: (code instructions at: labelIndex - 1)) not
+ 				and: [#(blockReturnTop blockReturnConstant: methodReturnSpecialConstant:
- 				and: [#(blockReturnTop blockReturnConstant:
  						methodReturnTop methodReturnConstant: methodReturnReceiver)
  							includes: (code instructions at: labelIndex - 1) selector]]).
  	^(sizes at: labelIndex) ifNotNil:
  		[self totalSizeFrom: index + 1 to: labelIndex - 1]!

Squeak-dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.