On Thu, Sep 25, 2008 at 02:01:22PM -0700, chromatic wrote: > On Thursday 25 September 2008 00:09:37 Moritz Lenz wrote: > > As of today (and r31404) Rakudo's 'make spectest_regression' produces > > compile time errors in three files, all of which are related to integer > > overflow. > > I suspect it is too. I can't figure out what in PCT is the culprit > (something related to printing floats),
Floats that are integer values greater than 2147483647 but less than 1e+15 don't have a decimal point or 'e' notation when they stringify, so when IMCC gets a hold of them it carps about integers being out of range. Oddly, placing an 'L' at the end of the value seems to solve things: assign $P0, 999999999999999 # IMCC integer overflow assign $P0, 999999999999999L # works I was working on having PCT recognize floats in this range and then adding the 'L' when needed, but autopromoting I constants to N constants seems like the right thing to do here. More in a bit. Pm