Re: [Help-smalltalk] Bug, float is printed wrongly

2018-08-12 Thread
The following seem to be related. 1/5000 is 2e-4; 1/1 is 1e-4 and so all these lines should give the same result of -4. The conversion "asExactFraction", which is called from the Float.st version of floorLog:, causes a -5 answer which is wrong: st>gst --version GNU Smalltalk version

Re: [Help-smalltalk] Bug, float is printed wrongly

2018-08-11 Thread Blake McBride
$ gst --version GNU Smalltalk version 3.2.92-dfe4b56 $ gst GNU Smalltalk ready st> 1e1 10.0 st> 1e0 1.0 st> 1e-1 0.1 st> 1e-2 0.01 st> 1e-3 0.001 st> 1e-4 0.1 st> On Sat, Aug 11, 2018 at 1:05 PM Tommy Pettersson wrote: > Hi, > > The float 1e-4 gets too many zeros when printed. This

Re: [Help-smalltalk] Bug, float is printed wrongly

2018-08-11 Thread Tommy Pettersson
Hi Bill, I think the ZeroDivide exception is unrelated, and caused by your gst being compiled with option -pie (the default in many distros). If so, you would get the same exception for 0.05 and many other numbers. Try compiling gst with -no-pie to see if the exception goes away. /Tommy

Re: [Help-smalltalk] Bug, float is printed wrongly

2018-08-11 Thread bill-auger
on debian 9: $ gst st> x := 1e-4 Object: 1 error: The program attempted to divide a number by zero ZeroDivide(Exception)>>signal (ExcHandling.st:254) SmallInteger(Number)>>zeroDivide (SysExcept.st:1426) Fraction>>setNumerator:setDenominator: (Fraction.st:485) Fraction

[Help-smalltalk] Bug, float is printed wrongly

2018-08-11 Thread Tommy Pettersson
Hi, The float 1e-4 gets too many zeros when printed. This happens on version 3.2.5 and on the current master branch at git://git.sv.gnu.org/smalltalk.git, on both 32-bit and 64-bit. Example: st> x := 1e-4 0.1 st> x+x 0.0002 Kind regards, Tommy