From 829ed1e388a5c12fc8e8c7dd7af846a0540ffd7c Mon Sep 17 00:00:00 2001 From: Bruno Haible Date: Sun, 24 Jan 2021 09:03:05 +0100 Subject: [PATCH] expm1l: Fix configure test result with GCC 10 on powerpc64le. * m4/expm1l.m4 (gl_FUNC_EXPM1L): Change test to avoid GCC optimization. --- ChangeLog | 5 +++++ m4/expm1l.m4 | 5 +++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2cd75b4a40..e451f33680 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2021-01-24 Bruno Haible + + expm1l: Fix configure test result with GCC 10 on powerpc64le. + * m4/expm1l.m4 (gl_FUNC_EXPM1L): Change test to avoid GCC optimization. + 2021-01-23 Bruno Haible utime: Fix configure test (regression 2020-12-04). diff --git a/m4/expm1l.m4 b/m4/expm1l.m4 index 0eaaf844ba..8fe31b574b 100644 --- a/m4/expm1l.m4 +++ b/m4/expm1l.m4 @@ -1,4 +1,4 @@ -# expm1l.m4 serial 7 +# expm1l.m4 serial 8 dnl Copyright (C) 2010-2021 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -134,7 +134,8 @@ int main (int argc, char *argv[]) long double x = 11.358L; long double y = my_expm1l (x); long double z = my_expm1l (- x); - long double err = (y + (1.0L + y) * z) * TWO_LDBL_MANT_DIG; + volatile long double t = (1.0L + y) * z; + long double err = (y + t) * TWO_LDBL_MANT_DIG; if (!(err >= -100.0L && err <= 100.0L)) result |= 1; } -- 2.11.4.GIT