<div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000;text-align: left" dir="ltr">
This breaks Trunk update because we have no control over load order within a single package. Therefore, MNU MethodDictionary >> #atNewIndex:putValue:. I will take a look at it.<div><br></div><div>Best,</div><div>Marcel</div><div class="mb_sig"></div>
<blockquote class="history_container" type="cite" style="border-left-style: solid;border-width: 1px;margin-top: 20px;margin-left: 0px;padding-left: 10px;min-width: 500px">
<p style="color: #AAAAAA; margin-top: 10px;">Am 21.09.2021 00:40:57 schrieb commits@source.squeak.org <commits@source.squeak.org>:</p><div style="font-family:Arial,Helvetica,sans-serif">Eliot Miranda uploaded a new version of Kernel to project The Trunk:<br>http://source.squeak.org/trunk/Kernel-eem.1415.mcz<br><br>==================== Summary ====================<br><br>Name: Kernel-eem.1415<br>Author: eem<br>Time: 20 September 2021, 3:40:41.04035 pm<br>UUID: b3b62e4b-49b1-4463-93de-6c69109de02d<br>Ancestors: Kernel-eem.1414<br><br>An alternative fix to http://lists.squeakfoundation.org/pipermail/squeak-dev/2021-September/216529.html<br><br>c.f. Kernel-ul.1415<br><br>=============== Diff against Kernel-eem.1414 ===============<br><br>Item was added:<br>+ ----- Method: MethodDictionary>>add: (in category 'adding') -----<br>+ add: anAssociation<br>+ <br>+ | index |<br>+ index := self scanFor: anAssociation key.<br>+ (array at: index)<br>+ ifNil: [ self atNewIndex: index put: anAssociation ]<br>+ ifNotNil: [ array at: index put: anAssociation value ].<br>+ ^anAssociation!<br><br>Item was changed:<br> ----- Method: MethodDictionary>>at:put: (in category 'accessing') -----<br> at: key put: value<br> "Set the value at key to be value."<br> <br> | index |<br> index := self scanFor: key.<br> (self basicAt: index)<br> ifNil: [<br> self<br> basicAt: index put: key;<br>+ atNewIndex: index putValue: value ]<br>- atNewIndex: index put: value ]<br> ifNotNil: [ <br> (array at: index) flushCache.<br> array at: index put: value ].<br> ^value!<br><br>Item was added:<br>+ ----- Method: MethodDictionary>>atNewIndex:put: (in category 'private') -----<br>+ atNewIndex: index put: anAssociation<br>+ "Override to deal with the internal organization of MethodDIctionaries<br>+ which, to suit the VM, do not use Associations."<br>+ self assert: anAssociation isVariableBinding.<br>+ self basicAt: index put: anAssociation key.<br>+ array at: index put: anAssociation value.<br>+ tally := tally + 1.<br>+ "Keep array at least 1/4 free for decent hash behavior"<br>+ array size * 3 < (tally * 4) ifTrue: [ self grow ]!<br><br>Item was added:<br>+ ----- Method: MethodDictionary>>atNewIndex:putValue: (in category 'private') -----<br>+ atNewIndex: index putValue: anObject<br>+ "Override to deal with the internal organization of MethodDIctionaries<br>+ which, to suit the VM, do not use Associations."<br>+ array at: index put: anObject.<br>+ tally := tally + 1.<br>+ "Keep array at least 1/4 free for decent hash behavior"<br>+ array size * 3 < (tally * 4) ifTrue: [ self grow ]!<br><br><br></div></blockquote></div>