[Ecls-list] Bug in configure/config.h.in?

Raymond Toy toy.raymond at gmail.com
Wed Sep 9 00:58:30 UTC 2009


In the latest CVS code, config.h.in contains:

#   ifdef HAVE_COPYSIGN
#    define signbit(x) (copysign(1.0,(x)) < 0)
#   else
     /* Fall back to no signed zero */
#    undef ECL_SIGNED_ZERO
#    define signbit(x) ((x) < 0)
#   endif

When converted to config.h (on Solaris 8), we get:

#   ifdef HAVE_COPYSIGN
#    define signbit(x) (copysign(1.0,(x)) < 0)
#   else
     /* Fall back to no signed zero */
#    define ECL_SIGNED_ZERO 1
#    define signbit(x) ((x) < 0)
#   endif

Note that ECL_SIGNED_ZERO is set to 1.  This is inconsistent with the
comment and with what appears to be the intent of config.h.in.  Perhaps
it doesn't matter if you don't have HAVE_COPYSIGN, but defining
ECL_SIGNED_ZERO with that signbit macro seems unlikely to work as desired.

Ray, who hopes he's not totally wrong here.





More information about the ecl-devel mailing list