summaryrefslogtreecommitdiffstats
path: root/contrib/gdtoa/strtodI.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/gdtoa/strtodI.c')
-rw-r--r--contrib/gdtoa/strtodI.c20
1 files changed, 5 insertions, 15 deletions
diff --git a/contrib/gdtoa/strtodI.c b/contrib/gdtoa/strtodI.c
index 163f363..98f8891 100644
--- a/contrib/gdtoa/strtodI.c
+++ b/contrib/gdtoa/strtodI.c
@@ -26,14 +26,8 @@ THIS SOFTWARE.
****************************************************************/
-/* Please send bug reports to
- David M. Gay
- Bell Laboratories, Room 2C-463
- 600 Mountain Avenue
- Murray Hill, NJ 07974-0636
- U.S.A.
- dmg@bell-labs.com
- */
+/* Please send bug reports to David M. Gay (dmg at acm dot org,
+ * with " at " changed at "@" and " dot " changed to "."). */
#include "gdtoaimp.h"
@@ -61,11 +55,7 @@ strtodI(s, sp, dd) CONST char *s; char **sp; double *dd;
strtodI(CONST char *s, char **sp, double *dd)
#endif
{
-#ifdef Sudden_Underflow
- static FPI fpi = { 53, 1-1023-53+1, 2046-1023-53+1, 1, 1 };
-#else
- static FPI fpi = { 53, 1-1023-53+1, 2046-1023-53+1, 1, 0 };
-#endif
+ static FPI fpi = { 53, 1-1023-53+1, 2046-1023-53+1, 1, SI };
ULong bits[2], sign;
Long exp;
int j, k;
@@ -165,8 +155,8 @@ strtodI(CONST char *s, char **sp, double *dd)
break;
case STRTOG_NaN:
- u->L[_0] = u->L[2+_0] = 0x7fffffff | sign;
- u->L[_1] = u->L[2+_1] = (ULong)-1;
+ u->L[0] = u->L[2] = d_QNAN0;
+ u->L[1] = u->L[3] = d_QNAN1;
break;
case STRTOG_NaNbits:
OpenPOWER on IntegriCloud