diff options
author | Joseph Myers <joseph@codesourcery.com> | 2012-08-27 16:01:27 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2012-08-27 16:02:07 +0000 |
commit | af92131a8eb7c2661a5bb0e31dc4cb028c85e0c6 (patch) | |
tree | 314e393e8358ea722cc43c6a6ac8660fa5e71e6b /ChangeLog | |
parent | d6e70f4368533224e66d10b7f2126b899a3fd5e4 (diff) | |
download | glibc-af92131a8eb7c2661a5bb0e31dc4cb028c85e0c6.tar glibc-af92131a8eb7c2661a5bb0e31dc4cb028c85e0c6.tar.gz glibc-af92131a8eb7c2661a5bb0e31dc4cb028c85e0c6.tar.bz2 glibc-af92131a8eb7c2661a5bb0e31dc4cb028c85e0c6.zip |
Fix strtod rounding (bug 3479).
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 37 |
1 files changed, 37 insertions, 0 deletions
@@ -1,5 +1,42 @@ 2012-08-27 Joseph Myers <joseph@codesourcery.com> + [BZ #3479] + * stdlib/strtod_l.c (NDIG): Remove. + (HEXNDIG): Likewise. + (MPNSIZE): Increase to represent 10^n where 2^-n is 1/4 ulp of the + smallest representable value. + (____STRTOF_INTERNAL): Use all fractional decimal digits that may + lie within an exact representation of 1/2 ulp of the result. + * stdlib/fpioconst.c (__tens): Include 10^2^9 and 10^2^10 + unconditionally. + (TENS_P9_IDX): Define unconditionally. + (TENS_P9_SIZE): Likewise. + (TENS_P10_IDX): Likewise. + (TENS_P10_SIZE): Likewise. + [BITS_PER_MP_LIMB == 32]: Change condition for larger powers of 10 + to !defined __NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__ > 1024. + [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__ > 1024] (__tens): Add + entries for 10^2^13 and 10^2^14. + [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__ > 1024] + (TENS_P13_IDX): Define. + (TENS_P13_SIZE): Likewise. + (TENS_P14_IDX): Likewise. + (TENS_P14_SIZE): Likewise. + (_fpioconst_pow10): Change array size to + FPIOCONST_POW10_ARRAY_SIZE. Make entries for 10^2^9 and 10^2^10 + unconditional. + (_fpioconst_pow10) [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__ > + 1024]: Add entries for 10^2^13 and 10^2^14. + [LAST_POW10 > _LAST_POW10]: Remove #error. + * stdlib/fpioconst.h (FPIOCONST_POW10_ARRAY_SIZE): Define. + (_fpioconst_pow10): Change array size to + FPIOCONST_POW10_ARRAY_SIZE. + * stdlib/gen-fpioconst.c: New file. + * stdlib/gen-tst-strtod-round.c: Likewise. + * stdlib/tst-strtod-round-data: Likewise. + * stdlib/tst-strtod-round.c: Likewise. + * stdlib/Makefile (tests): Add tst-strtod-round. + [BZ #14459] * stdlib/strtod_l.c: Include <stdint.h>. (NDEBUG): Do not define. |