diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | WUR-REPORT | 2 | ||||
-rw-r--r-- | stdio-common/tstdiomisc.c | 21 |
3 files changed, 11 insertions, 16 deletions
diff --git a/ChangeLog b/ChangeLog index 7d51ce7922..d4d5c49008 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2006-01-07 Ulrich Drepper <drepper@redhat.com> + + * stdio-common/tstdiomisc.c (F): Use NAN to get NaN value. + 2006-01-06 Ulrich Drepper <drepper@redhat.com> * elf/tst-tls8.c (do_test): Use $ORIGIN in module names. diff --git a/WUR-REPORT b/WUR-REPORT index 52c4a812d9..ef407cfdbe 100644 --- a/WUR-REPORT +++ b/WUR-REPORT @@ -27,7 +27,7 @@ fsetpos: likewise <stdlib.h>: -atext: it is guaranteed that a certain number of handlers can be +atexit: it is guaranteed that a certain number of handlers can be registered, so some calls might need not be checked on_exit: same random functions: one might want to discard a number of results. In any diff --git a/stdio-common/tstdiomisc.c b/stdio-common/tstdiomisc.c index e89487cb45..db038fa2b0 100644 --- a/stdio-common/tstdiomisc.c +++ b/stdio-common/tstdiomisc.c @@ -46,15 +46,8 @@ t2 (void) return result; } -#if FLT_EVAL_METHOD == 2 -volatile long double dbl_max = LDBL_MAX; -# define FLT_FLT_FMT "%Lf %LF" -# define FLT_FLT_WFMT L"%Lf %LF" -#else -# define dbl_max DBL_MAX -# define FLT_FLT_FMT "%f %F" -# define FLT_FLT_WFMT L"%f %F" -#endif +volatile double nanval; + static int F (void) @@ -63,9 +56,9 @@ F (void) wchar_t wbuf[10]; int result; - snprintf (buf, sizeof buf, FLT_FLT_FMT, - dbl_max * dbl_max - dbl_max * dbl_max, - dbl_max * dbl_max - dbl_max * dbl_max); + nanval = NAN; + + snprintf (buf, sizeof buf, "%f %F", nanval, nanval); result = strcmp (buf, "nan NAN") != 0; printf ("expected \"nan NAN\", got \"%s\"\n", buf); @@ -73,9 +66,7 @@ F (void) result |= strcmp (buf, "inf INF") != 0; printf ("expected \"inf INF\", got \"%s\"\n", buf); - swprintf (wbuf, sizeof wbuf / sizeof (wbuf[0]), FLT_FLT_WFMT, - dbl_max * dbl_max - dbl_max * dbl_max, - dbl_max * dbl_max - dbl_max * dbl_max); + swprintf (wbuf, sizeof wbuf / sizeof (wbuf[0]), L"%f %F", nanval, nanval); result |= wcscmp (wbuf, L"nan NAN") != 0; printf ("expected L\"nan NAN\", got L\"%S\"\n", wbuf); |