From 43b768284325b7e7d2ec3fc3dcac13a35c378c95 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Mon, 4 Jun 2007 14:38:22 +0000 Subject: * sysdeps/ieee754/ldbl-128ibm/printf_fphex.c (PRINT_FPHEX_LONG_DOUBLE): Fix printing numbers where lower double is non-zero, but smaller than 2 * __DBL_MIN__. * stdio-common/tst-sprintf2.c: New test. * stdio-common/Makefile (tests): Add tst-sprintf2. * math/test-misc.c (main): Don't run last batch of tests with IBM long double format. --- math/test-misc.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'math') diff --git a/math/test-misc.c b/math/test-misc.c index a1ad688..14fe38b 100644 --- a/math/test-misc.c +++ b/math/test-misc.c @@ -1235,7 +1235,12 @@ main (void) } #endif -#if !defined NO_LONG_DOUBLE && LDBL_MANT_DIG >= DBL_MANT_DIG + 4 +/* Skip testing IBM long double format, for 2 reasons: + 1) it only supports FE_TONEAREST + 2) nextafter (0.0, 1.0) == nextafterl (0.0L, 1.0L), so + nextafter (0.0, 1.0) / 16.0L will be 0.0L. */ +#if !defined NO_LONG_DOUBLE && LDBL_MANT_DIG >= DBL_MANT_DIG + 4 \ + && LDBL_MANT_DIG != 106 int oldmode = fegetround (); int j; for (j = 0; j < 4; j++) -- cgit v1.1