From fd1ad1e25a6d0676a560d237ff5f44faa6e1dc87 Mon Sep 17 00:00:00 2001 From: Peter Kokot Date: Sun, 7 Apr 2019 15:20:02 +0200 Subject: [PATCH] Remove HAVE_LIMITS_H The `` header file is part of the standard C89 headers [1] and on current systems can be included unconditionally. Since PHP requires at least C89 or greater, the `HAVE_LIMITS_H` symbol defined by Autoconf in configure.ac [2] can be ommitted and simplifed however due to bundled file library (libmagic) and timelib still using it, the removal there was omitted and done only in Zend.m4 file. Current bundled libraries libtime, oniguruma, and libmagic still include partial `HAVE_LIMITS_H` usage and will be more refactored when this is possible. Refs: [1] https://port70.net/~nsz/c/c89/c89-draft.html#4.1.2 [2] https://git.savannah.gnu.org/cgit/autoconf.git/tree/lib/autoconf/headers.m4 --- TSRM/tsrm_config_common.h | 2 -- Zend/Zend.m4 | 1 - Zend/zend_alloc.c | 2 -- Zend/zend_portability.h | 4 +--- ext/standard/exec.c | 2 -- ext/standard/string.c | 6 ------ ext/standard/url_scanner_ex.re | 4 +--- main/php.h | 2 -- 8 files changed, 2 insertions(+), 21 deletions(-) diff --git a/TSRM/tsrm_config_common.h b/TSRM/tsrm_config_common.h index 64cecd912ae..d3c7672d48f 100644 --- a/TSRM/tsrm_config_common.h +++ b/TSRM/tsrm_config_common.h @@ -35,9 +35,7 @@ char *alloca (); #include #endif -#if HAVE_LIMITS_H #include -#endif #ifndef MAXPATHLEN # if _WIN32 diff --git a/Zend/Zend.m4 b/Zend/Zend.m4 index 29404631eb5..c0ada26aeab 100644 --- a/Zend/Zend.m4 +++ b/Zend/Zend.m4 @@ -8,7 +8,6 @@ AC_REQUIRE([AC_PROG_CC]) AC_CHECK_HEADERS( inttypes.h \ stdint.h \ -limits.h \ malloc.h \ unistd.h \ sys/types.h \ diff --git a/Zend/zend_alloc.c b/Zend/zend_alloc.c index dabf48150ce..77474c55279 100644 --- a/Zend/zend_alloc.c +++ b/Zend/zend_alloc.c @@ -77,9 +77,7 @@ #include #include -#if HAVE_LIMITS_H #include -#endif #include #include diff --git a/Zend/zend_portability.h b/Zend/zend_portability.h index fe3f5c4245c..56b7a1ada3d 100644 --- a/Zend/zend_portability.h +++ b/Zend/zend_portability.h @@ -60,9 +60,7 @@ # include #endif -#ifdef HAVE_LIMITS_H -# include -#endif +#include #if HAVE_ALLOCA_H && !defined(_ALLOCA_H) # include diff --git a/ext/standard/exec.c b/ext/standard/exec.c index 63e1d97e1d8..38399458368 100644 --- a/ext/standard/exec.c +++ b/ext/standard/exec.c @@ -49,9 +49,7 @@ #include #endif -#if HAVE_LIMITS_H #include -#endif #ifdef PHP_WIN32 # include "win32/nice.h" diff --git a/ext/standard/string.c b/ext/standard/string.c index 194ce9ff34b..8fb0e81ab0b 100644 --- a/ext/standard/string.c +++ b/ext/standard/string.c @@ -90,12 +90,6 @@ void register_string_constants(INIT_FUNC_ARGS) #ifdef HAVE_LOCALECONV /* If last members of struct lconv equal CHAR_MAX, no grouping is done */ - -/* This is bad, but since we are going to be hardcoding in the POSIX stuff anyway... */ -# ifndef HAVE_LIMITS_H -# define CHAR_MAX 127 -# endif - REGISTER_LONG_CONSTANT("CHAR_MAX", CHAR_MAX, CONST_CS | CONST_PERSISTENT); #endif diff --git a/ext/standard/url_scanner_ex.re b/ext/standard/url_scanner_ex.re index 0386d0e955f..8ad129380ef 100644 --- a/ext/standard/url_scanner_ex.re +++ b/ext/standard/url_scanner_ex.re @@ -22,10 +22,8 @@ #ifdef HAVE_UNISTD_H #include #endif -#ifdef HAVE_LIMITS_H -#include -#endif +#include #include #include #include diff --git a/main/php.h b/main/php.h index 17aa3b3de58..888344324ee 100644 --- a/main/php.h +++ b/main/php.h @@ -243,9 +243,7 @@ char *strerror(int); # endif #endif -#if HAVE_LIMITS_H #include -#endif #ifndef LONG_MAX #define LONG_MAX 2147483647L