Re: The Inbox: MethodMassage-dtl.71.mcz
| Newsgroups | gmane.comp.lang.smalltalk.squeak.general |
|---|---|
| Message-ID | <[email protected]> |
This definitely needs expert review, I am a rookie in this area but if I am reading it right the fix is simple. If so, this gets us down to one remaining test failure in MessageMassageTests for both bytecode sets. Dave On 2026-05-10 20:49, [email protected] wrote: > David T. Lewis uploaded a new version of MethodMassage to project The > Inbox: > http://source.squeak.org/inbox/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] Squeak-dev mailing list -- [email protected] To unsubscribe send an email to [email protected]