From b5664d94a7ab12c880505b39519743fd5df66c63 Mon Sep 17 00:00:00 2001 From: Eric Blake Date: Fri, 12 Sep 2008 06:30:32 -0600 Subject: [PATCH] signbit: work around bug of HP-UX 10.20 cc with -0.0 literal * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Rewrite test to avoid literal -0.0. Reported by Jonathan C. Patschke . Signed-off-by: Eric Blake --- ChangeLog | 7 +++++++ m4/signbit.m4 | 8 +++++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index c895a9b5c..bf7fcc9dd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2008-09-12 Eric Blake + + signbit: work around bug of HP-UX 10.20 cc with -0.0 literal + * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Rewrite test to avoid + literal -0.0. + Reported by Jonathan C. Patschke . + 2008-09-11 Yoann Vandoorselaere * lib/glthread/cond.h: Use dummy implementation also if diff --git a/m4/signbit.m4 b/m4/signbit.m4 index 152a32e56..17484532b 100644 --- a/m4/signbit.m4 +++ b/m4/signbit.m4 @@ -124,12 +124,14 @@ AC_DEFUN([gl_SIGNBIT], ]) AC_DEFUN([gl_SIGNBIT_TEST_PROGRAM], [ +/* HP cc on HP-UX 10.20 has a bug with the constant expression -0.0. + So we use -p0f instead. */ float p0f = 0.0f; -float m0f = -0.0f; +float m0f = -p0f; double p0d = 0.0; -double m0d = -0.0; +double m0d = -p0d; long double p0l = 0.0L; -long double m0l = -0.0L; +long double m0l = -p0l; int main () { { -- 2.11.0