> On 1 Jun 2017, at 15:59, Henrik Sperre Johansen 
> <[email protected]> wrote:
> 
> SmallInteger >> digitAt: has an n > 4 ifTrue: [^0] check, in 64bit this needs
> to check against 8. 
> (The value represents max number of 8-bit digits in a SmallInteger)

I can confirm that this fixes the problems that I reported. I guess we should 
include this patch ?

This fixes some of the failing tests in Kernel-Tests-Numbers but not all of 
them (some others are really hardcoded constants in the tests).

> "I thought BoxedFloat64 should not be used in 64-bit ?"
> It will be used for some large exponents, search for "immediate float" in
> https://clementbera.wordpress.com/2014/01/16/spurs-new-object-format/ 
> for a good description.
> 
> "Also, should #emin, #emax and friends not be different for SmallFloat64 ? "
> No, it's an implementation detail.
> Both float classes represent 64bit floating points with emin/emax as listed.
> When one is insufficient; it should be swapped to the other automatically,
> in a manner similar  to Byte/WideStrings instances. 

OK, I understand better now.

Thank you both.

> Cheers,
> Henry 
> 
> 
> 
> --
> View this message in context: 
> http://forum.world.st/Confused-about-Floats-on-64-bit-Pharo-6-tp4948805p4948828.html
> Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
> 


Reply via email to