diff --git a/Zend/Zend.m4 b/Zend/Zend.m4 index f93d507697a..a1c1d3b07b0 100644 --- a/Zend/Zend.m4 +++ b/Zend/Zend.m4 @@ -100,8 +100,7 @@ AC_FUNC_ALLOCA AC_CHECK_FUNCS(memcpy strdup getpid kill strtod strtol finite fpclass sigsetjmp) AC_ZEND_BROKEN_SPRINTF -AC_CHECK_FUNCS(finite) -AC_CHECK_DECLS([isfinite, isnan, isinf], [], [], [[#include ]]) +AC_CHECK_FUNCS(finite isfinite isinf isnan) ZEND_FP_EXCEPT diff --git a/Zend/configure.ac b/Zend/configure.ac index 31bafdc546a..5dfdccac6dd 100644 --- a/Zend/configure.ac +++ b/Zend/configure.ac @@ -63,7 +63,7 @@ int zend_sprintf(char *buffer, const char *format, ...); #include #ifndef zend_isnan -#ifdef HAVE_DECL_ISNAN +#ifdef HAVE_ISNAN #define zend_isnan(a) isnan(a) #elif defined(HAVE_FPCLASS) #define zend_isnan(a) ((fpclass(a) == FP_SNAN) || (fpclass(a) == FP_QNAN)) @@ -72,18 +72,18 @@ int zend_sprintf(char *buffer, const char *format, ...); #endif #endif -#ifdef HAVE_DECL_ISINF +#ifdef HAVE_ISINF #define zend_isinf(a) isinf(a) #elif defined(INFINITY) /* Might not work, but is required by ISO C99 */ -#define zend_isinf(a) (((a)==INFINITY || (a)==-INFINITY)?1:0) +#define zend_isinf(a) (((a)==INFINITY)?1:0) #elif defined(HAVE_FPCLASS) #define zend_isinf(a) ((fpclass(a) == FP_PINF) || (fpclass(a) == FP_NINF)) #else #define zend_isinf(a) 0 #endif -#if defined(HAVE_DECL_ISINFINITE) || defined(isfinite) +#if defined(HAVE_ISFINITE) || defined(isfinite) #define zend_finite(a) isfinite(a) #elif defined(HAVE_FINITE) #define zend_finite(a) finite(a) diff --git a/configure.ac b/configure.ac index 8326895a3d2..5584a4f43a3 100644 --- a/configure.ac +++ b/configure.ac @@ -68,7 +68,7 @@ int zend_sprintf(char *buffer, const char *format, ...); #include #ifndef zend_isnan -#ifdef HAVE_DECL_ISNAN +#ifdef HAVE_ISNAN #define zend_isnan(a) isnan(a) #elif defined(HAVE_FPCLASS) #define zend_isnan(a) ((fpclass(a) == FP_SNAN) || (fpclass(a) == FP_QNAN)) @@ -77,18 +77,18 @@ int zend_sprintf(char *buffer, const char *format, ...); #endif #endif -#ifdef HAVE_DECL_ISINF +#ifdef HAVE_ISINF #define zend_isinf(a) isinf(a) #elif defined(INFINITY) /* Might not work, but is required by ISO C99 */ -#define zend_isinf(a) (((a)==INFINITY || (a)==-INFINITY)?1:0) +#define zend_isinf(a) (((a)==INFINITY)?1:0) #elif defined(HAVE_FPCLASS) #define zend_isinf(a) ((fpclass(a) == FP_PINF) || (fpclass(a) == FP_NINF)) #else #define zend_isinf(a) 0 #endif -#if defined(HAVE_DECL_ISINFINITE) || defined(isfinite) +#if defined(HAVE_ISFINITE) || defined(isfinite) #define zend_finite(a) isfinite(a) #elif defined(HAVE_FINITE) #define zend_finite(a) finite(a) diff --git a/ext/standard/tests/math/bug74039.phpt b/ext/standard/tests/math/bug74039.phpt deleted file mode 100644 index dd0e1fa2603..00000000000 --- a/ext/standard/tests/math/bug74039.phpt +++ /dev/null @@ -1,28 +0,0 @@ ---TEST-- -Bug #74039: is_infinite(-INF) returns false ---FILE-- - ---EXPECT-- -bool(false) -bool(true) -bool(false) -bool(false) -bool(true) -bool(false) -bool(false) -bool(false) -bool(true)