Message77451
> floating-point variable "x" has an exact nonnegative integer value
> between 0 and 2**DBL_MANT_DIG.
Hmm. On closer inspection that's not quite true. After the line
x = x * PyLong_BASE + (dig & (PyLong_BASE - pmask));
x has a value of the form n * pmask, where pmask is a power of 2 and
n is in the range [0, 2**DBL_MANT_DIG). It's still exactly represented,
provided that FLT_RADIX is 2. (It's the multiplications by powers of 2
that get hairy when FLT_RADIX is 16, since they *can* lose information.) |
|
Date |
User |
Action |
Args |
2008-12-09 21:02:37 | mark.dickinson | set | recipients:
+ mark.dickinson, belopolsky, ggenellina, vstinner, drj |
2008-12-09 21:02:37 | mark.dickinson | set | messageid: <1228856557.61.0.544208850404.issue3166@psf.upfronthosting.co.za> |
2008-12-09 21:02:36 | mark.dickinson | link | issue3166 messages |
2008-12-09 21:02:36 | mark.dickinson | create | |
|