<div dir="ltr"><div>I missed this obvious case because the KernelTests-Numbers did pass.</div><div>I wish I could amend squash or fixup, but nevermind...<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Le mer. 28 août 2019 à 23:01, <<a href="mailto:commits@source.squeak.org">commits@source.squeak.org</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Nicolas Cellier uploaded a new version of Kernel to project The Trunk:<br>
<a href="http://source.squeak.org/trunk/Kernel-nice.1261.mcz" rel="noreferrer" target="_blank">http://source.squeak.org/trunk/Kernel-nice.1261.mcz</a><br>
<br>
==================== Summary ====================<br>
<br>
Name: Kernel-nice.1261<br>
Author: nice<br>
Time: 28 August 2019, 11:00:52.985296 pm<br>
UUID: b8758656-d1f0-49cd-976c-cbd7d772b1f3<br>
Ancestors: Kernel-nice.1260<br>
<br>
Oups, I forgot to fix Float negativeInfinity < 0 when arithmetic primitives are configured to refuse to convert a SmallInteger asFloat...<br>
<br>
=============== Diff against Kernel-nice.1260 ===============<br>
<br>
Item was changed:<br>
  ----- Method: Number>>adaptToFloat:andCompare: (in category 'converting') -----<br>
  adaptToFloat: rcvr andCompare: selector <br>
        "If I am involved in comparison with a Float, convert rcvr to a<br>
        Fraction. This way, no bit is lost and comparison is exact."<br>
<br>
        rcvr isFinite<br>
                ifFalse: [<br>
                        selector == #= ifTrue: [^false].<br>
                        selector == #~= ifTrue: [^true].<br>
                        rcvr isNaN ifTrue: [^ false].<br>
                        (selector = #< or: [selector = #'<='])<br>
+                               ifTrue: [^ rcvr < 0.0].<br>
-                               ifTrue: [^ rcvr positive not].<br>
                        (selector = #> or: [selector = #'>='])<br>
+                               ifTrue: [^ rcvr > 0.0].<br>
-                               ifTrue: [^ rcvr >= 0.0].<br>
                        ^self error: 'unknow comparison selector'].<br>
<br>
        "Try to avoid asTrueFraction because it can cost"<br>
        self isAnExactFloat ifTrue: [^rcvr perform: selector with: self asExactFloat].<br>
        selector == #= ifTrue: [^false].<br>
        selector == #~= ifTrue: [^true].<br>
        ^ rcvr asTrueFraction perform: selector with: self!<br>
<br>
Item was removed:<br>
- ----- Method: Object>>perform:with:with:with:with:with: (in category 'message handling') -----<br>
- perform: aSymbol with: firstObject with: secondObject with: thirdObject with: fourthObject with: fifthObject<br>
-       "Send the selector, aSymbol, to the receiver with the given arguments.<br>
-       Fail if the number of arguments expected by the selector is not four.<br>
-       Primitive. Optional. See Object documentation whatIsAPrimitive."<br>
- <br>
-       <primitive: 83><br>
-       ^ self perform: aSymbol withArguments: { firstObject. secondObject. thirdObject. fourthObject. fifthObject }!<br>
<br>
<br>
</blockquote></div>