]> Savannah Git Hosting - gnulib.git/commitdiff
tests: Make use of signed signalling NaNs.
authorBruno Haible <bruno@clisp.org>
Fri, 13 Oct 2023 11:54:58 +0000 (13:54 +0200)
committerBruno Haible <bruno@clisp.org>
Fri, 13 Oct 2023 12:06:04 +0000 (14:06 +0200)
* tests/test-signbit.c: Include signed-snan.h instead of snan.h.
(test_signbitf): Test positive_SNaNf, negative_SNaNf, instead of only
SNaNf.
(test_signbitd): Test positive_SNaNd, negative_SNaNd, instead of only
SNaNd.
(test_signbitl): Test positive_SNaNl, negative_SNaNl, instead of only
SNaNl.
* tests/test-stdio.c: Include signed-snan.h instead of snan.h.
(main): Test positive_SNaNd, negative_SNaNd, instead of only SNaNd.
Also, test positive_NaNd, negative_NaNd, instead of NaNd.
* modules/signbit-tests (Depends-on): Add signed-snan. Remove snan.
* modules/stdio-tests (Depends-on): Likewise.

ChangeLog
modules/signbit-tests
modules/stdio-tests
tests/test-signbit.c
tests/test-stdio.c

index 710636aff6a262a2d5b1b8898db1b95002fabfa1..db88ac9554f0bf9a0f82bcb8573e499f73658f73 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,19 @@
+2023-10-13  Bruno Haible  <bruno@clisp.org>
+
+       tests: Make use of signed signalling NaNs.
+       * tests/test-signbit.c: Include signed-snan.h instead of snan.h.
+       (test_signbitf): Test positive_SNaNf, negative_SNaNf, instead of only
+       SNaNf.
+       (test_signbitd): Test positive_SNaNd, negative_SNaNd, instead of only
+       SNaNd.
+       (test_signbitl): Test positive_SNaNl, negative_SNaNl, instead of only
+       SNaNl.
+       * tests/test-stdio.c: Include signed-snan.h instead of snan.h.
+       (main): Test positive_SNaNd, negative_SNaNd, instead of only SNaNd.
+       Also, test positive_NaNd, negative_NaNd, instead of NaNd.
+       * modules/signbit-tests (Depends-on): Add signed-snan. Remove snan.
+       * modules/stdio-tests (Depends-on): Likewise.
+
 2023-10-13  Bruno Haible  <bruno@clisp.org>
 
        signed-snan: New module.
index 20b18efdf02a93b03aa0e1b169b717f54a9fffbe..f540d949a5642f4450e9dd055bc59da7cea03d3c 100644 (file)
@@ -7,7 +7,7 @@ tests/macros.h
 Depends-on:
 float
 signed-nan
-snan
+signed-snan
 
 configure.ac:
 
index a24433f511d69eb6f50c20e951dc80b636d6bca5..0e6d85593f105db61e18881b0e1588f7afa1ff6e 100644 (file)
@@ -6,7 +6,7 @@ m4/exponentd.m4
 Depends-on:
 assert-h
 signed-nan
-snan
+signed-snan
 stdio-c++-tests
 fgetc-tests
 fputc-tests
index 35b845c6c309591786e956f3152f0cd466575db0..b68bbfa89069685ac8698df02b71b88d1720f16b 100644 (file)
@@ -31,7 +31,7 @@
 #include "minus-zero.h"
 #include "infinity.h"
 #include "signed-nan.h"
-#include "snan.h"
+#include "signed-snan.h"
 #include "macros.h"
 
 float zerof = 0.0f;
@@ -62,7 +62,8 @@ test_signbitf ()
   ASSERT (signbit (negative_NaNf ()));
 #if HAVE_SNANF
   /* Signalling NaN.  */
-  (void) signbit (SNaNf ());
+  ASSERT (!signbit (positive_SNaNf ()));
+  ASSERT (signbit (negative_SNaNf ()));
 #endif
 }
 
@@ -90,7 +91,8 @@ test_signbitd ()
   ASSERT (signbit (negative_NaNd ()));
 #if HAVE_SNAND
   /* Signalling NaN.  */
-  (void) signbit (SNaNd ());
+  ASSERT (!signbit (positive_SNaNd ()));
+  ASSERT (signbit (negative_SNaNd ()));
 #endif
 }
 
@@ -118,7 +120,8 @@ test_signbitl ()
   ASSERT (signbit (negative_NaNl ()));
 #if HAVE_SNANL
   /* Signalling NaN.  */
-  (void) signbit (SNaNl ());
+  ASSERT (!signbit (positive_SNaNl ()));
+  ASSERT (signbit (negative_SNaNl ()));
 #endif
 }
 
index 6bd100edae3f4ae0134b6b11e054c8583a4d1bfc..2836ed18a5c4d05ba43df968e6af29aa62a6f681 100644 (file)
@@ -40,7 +40,7 @@ va_list t5;
 #include <string.h>
 
 #include "signed-nan.h"
-#include "snan.h"
+#include "signed-snan.h"
 #include "macros.h"
 
 int
@@ -69,11 +69,22 @@ main (void)
     memory_double value2;
     char buf[64];
 
-    value1 = SNaNd();
+    value1 = positive_SNaNd();
     sprintf (buf, "%g", value1);
     ASSERT (strlen (buf) <= _PRINTF_NAN_LEN_MAX);
 
-    value2.value = NaNd ();
+    value1 = negative_SNaNd();
+    sprintf (buf, "%g", value1);
+    ASSERT (strlen (buf) <= _PRINTF_NAN_LEN_MAX);
+
+    value2.value = positive_NaNd ();
+    #if DBL_EXPBIT0_BIT == 20
+    value2.word[DBL_EXPBIT0_WORD] ^= 0x54321;
+    #endif
+    sprintf (buf, "%g", value2.value);
+    ASSERT (strlen (buf) <= _PRINTF_NAN_LEN_MAX);
+
+    value2.value = negative_NaNd ();
     #if DBL_EXPBIT0_BIT == 20
     value2.word[DBL_EXPBIT0_WORD] ^= 0x54321;
     #endif