<limits.h>, <locale.h>, <stdlib.h> are guaranteed by C89. I've left <string.h>
for a followup because of a complication that I'll address later.
gcc/ChangeLog:
PR bootstrap/112422
* acinclude.m4 (gcc_AC_C_CHAR_BIT): Don't check HAVE_LIMITS_H.
* configure.ac: Don't search for limits.h, locale.h, stdlib.h.
* intl.h (GCC_INTL_H): Always include locale.h.
* system.h: Always include limits.h.
Always include stdlib.h.
---
gcc/acinclude.m4 | 4 +---
gcc/config.in | 12 ------------
gcc/configure | 11 ++++-------
gcc/configure.ac | 5 ++---
gcc/intl.h | 4 +---
gcc/system.h | 8 ++------
6 files changed, 10 insertions(+), 34 deletions(-)
diff --git a/gcc/acinclude.m4 b/gcc/acinclude.m4
index 68a8c2cdea47..c72a6c9e121f 100644
--- a/gcc/acinclude.m4
+++ b/gcc/acinclude.m4
@@ -246,9 +246,7 @@ dnl
AC_DEFUN([gcc_AC_C_CHAR_BIT],
[AC_CACHE_CHECK(for CHAR_BIT, gcc_cv_decl_char_bit,
[AC_EGREP_CPP(found,
-[#ifdef HAVE_LIMITS_H
-#include <limits.h>
-#endif
+[#include <limits.h>
#ifdef CHAR_BIT
found
#endif], gcc_cv_decl_char_bit=yes, gcc_cv_decl_char_bit=no)
diff --git a/gcc/config.in b/gcc/config.in
index d4d864e858f3..8ab07d1ef2bd 100644
--- a/gcc/config.in
+++ b/gcc/config.in
@@ -1871,18 +1871,6 @@
#endif
-/* Define to 1 if you have the <limits.h> header file. */
-#ifndef USED_FOR_TARGET
-#undef HAVE_LIMITS_H
-#endif
-
-
-/* Define to 1 if you have the <locale.h> header file. */
-#ifndef USED_FOR_TARGET
-#undef HAVE_LOCALE_H
-#endif
-
-
/* Define to 1 if the system has the type `long long'. */
#ifndef USED_FOR_TARGET
#undef HAVE_LONG_LONG
diff --git a/gcc/configure b/gcc/configure
index f3df4b90e222..f509609de673 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -9387,10 +9387,10 @@ $as_echo "#define GWINSZ_IN_SYS_IOCTL 1" >>confdefs.h
fi
fi
-for ac_header in limits.h stddef.h string.h strings.h stdlib.h time.h iconv.h \
+for ac_header in stddef.h string.h strings.h time.h iconv.h \
fcntl.h ftw.h unistd.h sys/auxv.h sys/file.h sys/time.h
sys/mman.h \
sys/resource.h sys/param.h sys/times.h sys/stat.h
sys/locking.h \
- direct.h malloc.h langinfo.h ldfcn.h locale.h wchar.h libgen.h
+ direct.h malloc.h langinfo.h ldfcn.h wchar.h libgen.h
do :
as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
ac_fn_cxx_check_header_preproc "$LINENO" "$ac_header" "$as_ac_Header"
@@ -9419,7 +9419,6 @@ else
fi
-# These tests can't be done till we know if we have limits.h.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CHAR_BIT" >&5
$as_echo_n "checking for CHAR_BIT... " >&6; }
if ${gcc_cv_decl_char_bit+:} false; then :
@@ -9427,9 +9426,7 @@ if ${gcc_cv_decl_char_bit+:} false; then :
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#ifdef HAVE_LIMITS_H
#include <limits.h>
-#endif
#ifdef CHAR_BIT
found
#endif
@@ -21875,7 +21872,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 21878 "configure"
+#line 21875 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -21981,7 +21978,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 21984 "configure"
+#line 21981 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 77e7c09b3453..14fe4c095bde 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -1352,16 +1352,15 @@ AC_HEADER_TIME
ACX_HEADER_STRING
AC_HEADER_SYS_WAIT
AC_HEADER_TIOCGWINSZ
-AC_CHECK_HEADERS(limits.h stddef.h string.h strings.h stdlib.h time.h iconv.h \
+AC_CHECK_HEADERS(stddef.h string.h strings.h time.h iconv.h \
fcntl.h ftw.h unistd.h sys/auxv.h sys/file.h sys/time.h
sys/mman.h \
sys/resource.h sys/param.h sys/times.h sys/stat.h
sys/locking.h \
- direct.h malloc.h langinfo.h ldfcn.h locale.h wchar.h libgen.h)
+ direct.h malloc.h langinfo.h ldfcn.h wchar.h libgen.h)
# Check for thread headers.
AC_CHECK_HEADER(thread.h, [have_thread_h=yes], [have_thread_h=])
AC_CHECK_HEADER(pthread.h, [have_pthread_h=yes], [have_pthread_h=])
-# These tests can't be done till we know if we have limits.h.
gcc_AC_C_CHAR_BIT
AC_C_BIGENDIAN
diff --git a/gcc/intl.h b/gcc/intl.h
index 653471ef4c49..1c9e708d21c2 100644
--- a/gcc/intl.h
+++ b/gcc/intl.h
@@ -18,9 +18,7 @@
#ifndef GCC_INTL_H
#define GCC_INTL_H
-#ifdef HAVE_LOCALE_H
-# include <locale.h>
-#endif
+#include <locale.h>
#ifndef HAVE_SETLOCALE
# define setlocale(category, locale) (locale)
diff --git a/gcc/system.h b/gcc/system.h
index 9a4a99a0528f..8a2cac29d5b4 100644
--- a/gcc/system.h
+++ b/gcc/system.h
@@ -277,9 +277,7 @@ extern int errno;
# endif
#endif
-#ifdef HAVE_STDLIB_H
-# include <stdlib.h>
-#endif
+#include <stdlib.h>
/* When compiling C++ we need to include <cstdlib> as well as <stdlib.h> so
that it is processed before we poison "malloc"; otherwise, if a source
@@ -324,9 +322,7 @@ extern int errno;
# undef m_slot
#endif
-#if HAVE_LIMITS_H
-# include <limits.h>
-#endif
+#include <limits.h>
/* A macro to determine whether a VALUE lies inclusively within a
certain range without evaluating the VALUE more than once. This
--
2.56.0