[BUG] Arithmetic troubles about float numbers

Tom Phoenix rootbeer at redcat.com
Thu Jun 22 17:32:29 UTC 2006


On 6/22/06, Guillaume GRONDIN <grondin at ensm-douai.fr> wrote:

> 1) Any number containing 10 digits and over cannot be converted in a float.
> Ex : 1234567890 asFloat  "210.0" (similar problem for 0.1234567890)

Works for me, with a 3.8 on a Mac OS X VM. I don't know why you're
having troubles. What does your TestRunner do on a FloatTest?

> Consequence: arithmetic calculations using #asFloat may be erroneous

Calculations using floating point approximations may be erroneous for
many, many reasons. But this shouldn't be one of them.

> (637629679868427784505109440202397271654068317554218172555028 /
> 16543612251060553497428173841399257071316242218017578125) asFloat.
> "67720.5333333333" "ERRONEOUS!"

Again, I'm getting what seems to be the correct answer; not at all
what you're seeing.

> PS : I use win32 VM (3.7.1) and 3.9b-7033 image.

Try with a "fresh" 3.8 or 3.9 image and see whether you get the same
things. Good luck with it!

--Tom Phoenix



More information about the Squeak-dev mailing list