David Schultz
ae2cbf4c64
Merge gdtoa 20080831. This fixes several bugs, including an infinite
...
loop pointed out by cognet@ that occurs when calling strtod() with a
string representing a number between DBL_MAX and 2*DBL_MAX, when the
rounding mode is anything other than the default.
2008-09-03 07:23:57 +00:00
David Schultz
1d35705154
Flatten vendor/gdtoa/*.
2008-09-03 05:17:02 +00:00
David Schultz
c713eaa603
Bring in the vendor's fix for a bug in strtod() whereby
...
strtod("0xyz", &endp) resulted in endp pointing to "0xyz"
instead of "xyz".
Reported by: Tony Finch <dot@dotat.at>
MFC after: 1 week
2008-06-21 19:27:54 +00:00
David Schultz
9cb4166881
On platforms where long is 64 bits, make sure gdtoa doesn't use a
...
long when it really wants an int.
2007-12-17 00:19:49 +00:00
David Schultz
fb048cca0c
Fix previous commit: We should only mask the top bit in the STRTOG_NaNBits
...
case, not the STRTOG_Normal case.
2007-12-16 23:31:55 +00:00
David Schultz
10a381e55a
Fix strto{f,d,ld}() so they don't return signaling NaNs. C99
...
says they are never supposed to, and the fact that they did could
cause apps that run with unmasked FP exceptions to SIGFPE after a
scanf() or strtod(). The vendor stated that he will not be fixing
this, citing portability concerns.
2007-12-16 21:14:33 +00:00
David Schultz
2ca7a12a81
Some changes the vendor didn't want:
...
- Accept the '0x' prefix so strtod("nan(0x...)", NULL) returns the same
thing as gcc's builtin nan("0x...") for such strings.
- Don't return uninitialized memory.
- Finish processing the string up to the closing ')' (provided it's
lexically valid) for compatibility with C99 and *scanf().
2007-12-16 21:13:54 +00:00
David Schultz
273147031f
Merge local diffs.
2007-01-03 04:59:33 +00:00
David Schultz
c88250a57d
Import of the latest gdtoa sources, which include fixes for minor
...
problems relating to NaNs and rounding.
2007-01-03 04:58:54 +00:00
David Schultz
963e8efffe
This commit was generated by cvs2svn to compensate for changes in r165743,
...
which included commits to RCS files with non-trunk default branches.
2007-01-03 04:58:54 +00:00
David Schultz
ba54cdcdda
Configure gdtoa so that floating-point numbers are correctly rounded
...
when they are printed in non-default rounding modes.
2005-01-18 18:56:18 +00:00
David Schultz
19927830ac
Import gdtoa 20040118. This revision addresses some corner cases in
...
denormal and locale handling in strtod().
2004-01-19 05:14:12 +00:00
David Schultz
52ec752989
This commit was generated by cvs2svn to compensate for changes in r124703,
...
which included commits to RCS files with non-trunk default branches.
2004-01-19 05:14:12 +00:00
David Schultz
d086ded323
Userland spinlocks bad. Sleep locks good.
...
Use the latter for gdtoa.
Requested by: deischen (far too long ago)
2003-06-21 08:20:14 +00:00
David Schultz
6836976246
Add some missing prototypes to eliminate some warnings. These already
...
appear without leading underscores in gdtoa.h, but this approach avoids
removing that file from the vendor branch and unduly rearranging things.
Prodded by: nectar
2003-04-09 06:04:35 +00:00
David Schultz
628f583ce9
Add missing prototype for gdtoa().
2003-04-05 22:09:26 +00:00
David Schultz
8f7c2af436
Import new sources. The only material change in this update is to
...
add locale support for hexadecimal floating point conversions.
Noticed by: ache
Reviewed by: mike (mentor)
2003-03-25 17:55:07 +00:00
David Schultz
ec3a1a66aa
This commit was generated by cvs2svn to compensate for changes in r112620,
...
which included commits to RCS files with non-trunk default branches.
2003-03-25 17:55:07 +00:00
David Schultz
1dd3a3db1d
Enable locale support in strtod() and dtoa().
...
Noticed by: ache
Reviewed by: mike (mentor)
2003-03-19 20:25:45 +00:00
David Schultz
84781d47e6
Import gdtoa sources dated 20030318, which contain several locale fixes.
...
Reviewed by: mike (mentor)
2003-03-19 20:23:29 +00:00
David Schultz
e8b59c3f5d
This commit was generated by cvs2svn to compensate for changes in r112415,
...
which included commits to RCS files with non-trunk default branches.
2003-03-19 20:23:29 +00:00
David Schultz
de9840c6e5
Local patches:
...
- include extra system headers and add appropriate #defines
- use a spinlock to synchronize parts of gdtoa
- protect exported symbols with leading underscores
Reviewed by: bde (briefly), mike (mentor), obrien
2003-03-12 20:20:22 +00:00
David Schultz
cc36ccd13b
Initial import of David Gay's gdtoa library for conversion between
...
strings and floating point.
2003-03-12 20:18:32 +00:00