A gcc warning uncovered this mistake:

2020-12-20  Bruno Haible  <br...@clisp.org>

        isnanf: Fix autoconf test.
        * m4/isnanf.m4 (gl_ISNANF_WORKS): Fix one of the NaN tests.

diff --git a/m4/isnanf.m4 b/m4/isnanf.m4
index 3863aa1..c040bfe 100644
--- a/m4/isnanf.m4
+++ b/m4/isnanf.m4
@@ -1,4 +1,4 @@
-# isnanf.m4 serial 17
+# isnanf.m4 serial 18
 dnl Copyright (C) 2007-2020 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -169,7 +169,7 @@ int main()
       m.value = NaN ();
       /* Set the bits below the exponent to 01111...111.  */
       m.word[0] &= -1U << FLT_EXPBIT0_BIT;
-      m.word[0] |= 1U << (FLT_EXPBIT0_BIT - 1) - 1;
+      m.word[0] |= (1U << (FLT_EXPBIT0_BIT - 1)) - 1;
       if (!isnanf (m.value))
         result |= 4;
     }


Reply via email to