diff options
Diffstat (limited to 'm4/ceil.m4')
-rw-r--r-- | m4/ceil.m4 | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/m4/ceil.m4 b/m4/ceil.m4 index f58a99899..8d7b032a0 100644 --- a/m4/ceil.m4 +++ b/m4/ceil.m4 @@ -1,5 +1,5 @@ -# ceil.m4 serial 9 -dnl Copyright (C) 2007, 2009-2017 Free Software Foundation, Inc. +# ceil.m4 serial 15 +dnl Copyright (C) 2007, 2009-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, dnl with or without modifications, as long as this notice is preserved. @@ -32,7 +32,7 @@ AC_DEFUN([gl_FUNC_CEIL], static double dummy (double f) { return 0; } int main (int argc, char *argv[]) { - double (*my_ceil) (double) = argc ? ceil : dummy; + double (* volatile my_ceil) (double) = argc ? ceil : dummy; int result = 0; /* Test whether ceil (-0.0) is -0.0. */ if (signbitd (minus_zerod) && !signbitd (my_ceil (minus_zerod))) @@ -46,10 +46,14 @@ int main (int argc, char *argv[]) [gl_cv_func_ceil_ieee=yes], [gl_cv_func_ceil_ieee=no], [case "$host_os" in - # Guess yes on glibc systems. - *-gnu*) gl_cv_func_ceil_ieee="guessing yes" ;; - # If we don't know, assume the worst. - *) gl_cv_func_ceil_ieee="guessing no" ;; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_ceil_ieee="guessing yes" ;; + # Guess yes on musl systems. + *-musl*) gl_cv_func_ceil_ieee="guessing yes" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_ceil_ieee="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_ceil_ieee="$gl_cross_guess_normal" ;; esac ]) LIBS="$save_LIBS" @@ -79,8 +83,9 @@ AC_DEFUN([gl_FUNC_CEIL_LIBS], # define __NO_MATH_INLINES 1 /* for glibc */ #endif #include <math.h> + double (*funcptr) (double) = ceil; double x;]], - [[x = ceil(x);]])], + [[x = funcptr(x) + ceil(x);]])], [gl_cv_func_ceil_libm=]) if test "$gl_cv_func_ceil_libm" = "?"; then save_LIBS="$LIBS" @@ -91,8 +96,9 @@ AC_DEFUN([gl_FUNC_CEIL_LIBS], # define __NO_MATH_INLINES 1 /* for glibc */ #endif #include <math.h> + double (*funcptr) (double) = ceil; double x;]], - [[x = ceil(x);]])], + [[x = funcptr(x) + ceil(x);]])], [gl_cv_func_ceil_libm="-lm"]) LIBS="$save_LIBS" fi |