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; }