From c40ac6b26866256fc73919c2c7fc8243d4fb9a20 Mon Sep 17 00:00:00 2001 From: Ard Biesheuvel Date: Sat, 3 Apr 2004 09:46:20 +0000 Subject: [PATCH] Changed test to include returning HUGE_VAL as well (intended to resolve #27830) --- ext/standard/config.m4 | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/ext/standard/config.m4 b/ext/standard/config.m4 index b92e50ab0b..fa4d8ca518 100644 --- a/ext/standard/config.m4 +++ b/ext/standard/config.m4 @@ -326,7 +326,7 @@ if test "$ac_cv_atof_accept_inf" = "yes"; then AC_DEFINE([HAVE_ATOF_ACCEPTS_INF], 1, [whether atof() accepts INF]) fi -AC_CACHE_CHECK(whether HUGE_VAL + -HUGEVAL = NAN, ac_cv_huge_val_nan,[ +AC_CACHE_CHECK(whether HUGE_VAL + -HUGEVAL == NAN, ac_cv_huge_val_nan,[ AC_TRY_RUN([ #include #include @@ -350,9 +350,16 @@ AC_CACHE_CHECK(whether HUGE_VAL + -HUGEVAL = NAN, ac_cv_huge_val_nan,[ #define zend_isnan(a) 0 #endif +double hv(int i) +{ + /* avoid inlining */ + if (i) return hv(i-1); + else return HUGE_VAL; +} + int main(int argc, char** argv) { - return zend_isinf(HUGE_VAL) && zend_isnan(HUGE_VAL + -HUGE_VAL) ? 0 : 1; + return zend_isinf(hv(3)) && zend_isnan(HUGE_VAL + -HUGE_VAL) ? 0 : 1; } ],[ ac_cv_huge_val_nan=yes @@ -364,7 +371,7 @@ int main(int argc, char** argv) ]) dnl This is the most probable fallback so we assume yes in case of cross compile. if test "$ac_cv_huge_val_nan" = "yes"; then - AC_DEFINE([HAVE_HUGE_VAL_NAN], 1, [whether HUGE_VAL + -HUGEVAL = NAN]) + AC_DEFINE([HAVE_HUGE_VAL_NAN], 1, [whether HUGE_VAL + -HUGEVAL == NAN]) fi PHP_NEW_EXTENSION(standard, array.c base64.c basic_functions.c browscap.c crc32.c crypt.c \ -- 2.50.1