<div dir="ltr"><div dir="ltr"><div dir="ltr"><div class="gmail_default" style="font-size:small"><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Jan 19, 2021 at 4:31 AM <<a href="mailto:commits@source.squeak.org">commits@source.squeak.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Levente Uzonyi uploaded a new version of Collections to project The Trunk:<br>
<a href="http://source.squeak.org/trunk/Collections-ul.922.mcz" rel="noreferrer" target="_blank">http://source.squeak.org/trunk/Collections-ul.922.mcz</a><br>
<br>
==================== Summary ====================<br>
<br>
Name: Collections-ul.922<br>
Author: ul<br>
Time: 19 January 2021, 1:28:51.784086 pm<br>
UUID: 7d688371-2966-43d3-9000-3985ae9f6afa<br>
Ancestors: Collections-nice.921<br>
<br>
Fix off-by-one errors in OrderedCollection's #removeFirst: and #removeLast:. The argument of those methods can be zero.<br></blockquote><div><br></div><div class="gmail_default" style="font-size:small">Thanks!!</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default">Name: RoelTyper-eem.88</div><div class="gmail_default">Author: eem</div><div class="gmail_default">Time: 19 January 2021, 1:33:32.686379 pm</div><div class="gmail_default">UUID: 7cba406e-2ec5-4798-8046-e41bf4bd0388</div><div class="gmail_default">Ancestors: RoelTyper-eem.87</div><div class="gmail_default"><br></div><div class="gmail_default">Revert the work-around in InstvarInterfaceExtractor>>nativeSend:numArgs: now that Collections-ul.922 fixes the issues with anOrderedColleciton removeLast: 0.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small"></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
<br>
=============== Diff against Collections-nice.921 ===============<br>
<br>
Item was changed:<br>
  ----- Method: OrderedCollection>>removeFirst: (in category 'removing') -----<br>
  removeFirst: n <br>
        "Remove the first n objects into an array."<br>
<br>
        | lastIndexToRemove result |<br>
+       n < 0 ifTrue: [ self errorNoSuchElement ].<br>
-       n < 1 ifTrue: [ self errorNoSuchElement ].<br>
        lastIndex < (lastIndexToRemove := firstIndex + n - 1) ifTrue: [ self errorNotEnoughElements ].<br>
        result := array copyFrom: firstIndex to: lastIndexToRemove.<br>
        array from: firstIndex to: lastIndexToRemove put: nil.<br>
        firstIndex := lastIndexToRemove + 1.<br>
        ^result!<br>
<br>
Item was changed:<br>
  ----- Method: OrderedCollection>>removeLast: (in category 'removing') -----<br>
  removeLast: n <br>
        "Remove the last n objects into an array with last in last position."<br>
<br>
        | firstIndexToRemove result |<br>
+       n < 0 ifTrue: [ self errorNoSuchElement ].<br>
-       n < 1 ifTrue: [ self errorNoSuchElement ].<br>
        (firstIndexToRemove := lastIndex - n + 1) < firstIndex ifTrue: [ self errorNotEnoughElements ].<br>
        result := array copyFrom: firstIndexToRemove to: lastIndex.<br>
        array from: firstIndexToRemove to: lastIndex put: nil.<br>
        lastIndex := firstIndexToRemove - 1.<br>
        ^result!<br>
<br>
<br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><span style="font-size:small;border-collapse:separate"><div>_,,,^..^,,,_<br></div><div>best, Eliot</div></span></div></div></div></div></div>