X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fisnan.c;h=a5ca38df4134c41a94528abc3341b59f3d1f671f;hb=6e5eee287fe932f23aca494fb8153f218c905771;hp=182a7bd5f5f2514f66d97fa6a684958fbf88707e;hpb=8e04e14294e7ce756738625c3be1183be4b0c4eb;p=gnulib.git diff --git a/lib/isnan.c b/lib/isnan.c index 182a7bd5f..a5ca38df4 100644 --- a/lib/isnan.c +++ b/lib/isnan.c @@ -1,5 +1,5 @@ /* Test for NaN that does not need libm. - Copyright (C) 2007 Free Software Foundation, Inc. + Copyright (C) 2007-2008 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -36,7 +36,7 @@ # define SIZE SIZEOF_LDBL # define L_(literal) literal##L #elif ! defined USE_FLOAT -# define FUNC rpl_isnan +# define FUNC rpl_isnand # define DOUBLE double # define MAX_EXP DBL_MAX_EXP # define MIN_EXP DBL_MIN_EXP @@ -146,8 +146,10 @@ FUNC (DOUBLE x) memory_double m1; memory_double m2; + memset (&m1.value, 0, SIZE); + memset (&m2.value, 0, SIZE); m1.value = x; - m2.value = x + 0; + m2.value = x + (x ? 0.0L : -0.0L); if (memcmp (&m1.value, &m2.value, SIZE) != 0) return 1; # endif