diff -r 383d5baf43e1 -r dc04e2668278 ArithmeticValue.st --- a/ArithmeticValue.st Sat Nov 23 17:01:21 2019 +0100 +++ b/ArithmeticValue.st Sat Nov 23 17:01:52 2019 +0100 @@ -1,5 +1,3 @@ -"{ Encoding: utf8 }" - " COPYRIGHT (c) 1993 by Claus Gittinger All Rights Reserved @@ -520,7 +518,6 @@ ^ self == ArithmeticValue ! ! - !ArithmeticValue methodsFor:'arithmetic'! * something @@ -1832,10 +1829,8 @@ result := 1. t := self. - exp < 0 ifTrue:[ + (e := exp) < 0 ifTrue:[ e := exp negated. - ] ifFalse:[ - e := exp. ]. [e ~~ 0] whileTrue:[ @@ -1854,10 +1849,18 @@ ^ result " - (2.0 raisedToInteger:216) (2 raisedToInteger:216) + (2.0 raisedToInteger:216) + (2.0 asLongFloat) raisedToInteger:216 + (2.0 asShortFloat) raisedToInteger:216 + (2.0 asQDouble) raisedToInteger:216 + (2 raisedTo:216) -> 105312291668557186697918027683670432318895095400549111254310977536 + (2.0 raisedToInteger:216) asInteger - (2 raisedToInteger:216) + (2.0 raisedToInteger:400) asInteger - (2 raisedToInteger:400) + (2.0 raisedToInteger:500) asInteger - (2 raisedToInteger:500) + (2.0 raisedToInteger:1000) asInteger - (2 raisedToInteger:1000) (2 raisedToInteger:216) asFloat (2 raisedTo:216) asFloat @@ -1983,7 +1986,6 @@ ^ self * self ! ! - !ArithmeticValue methodsFor:'queries'! respondsToArithmetic