[PATCH] Handle --enable-checking={yes,assert,release} in libcpp (PR bootstrap/72823)

Jakub Jelinek jakub@redhat.com
Wed Nov 16 18:23:00 GMT 2016


Hi!

As mentioned in the PR, libcpp uses gcc_assert in a couple of places,
but guards it with ENABLE_ASSERT_CHECKING macro that is never defined
in libcpp.

This patch arranges for it to be defined if ENABLE_ASSERT_CHECKING
is going to be defined in gcc subdir.

Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk?

2016-11-16  Jakub Jelinek  <jakub@redhat.com>

	PR bootstrap/72823
	* configure.ac (ENABLE_ASSERT_CHECKING): Define if gcc configure
	would define that macro.
	* configure: Regenerated.
	* config.in: Regenerated.

--- libcpp/configure.ac.jj	2016-05-20 12:44:36.000000000 +0200
+++ libcpp/configure.ac	2016-11-15 16:40:16.753842880 +0100
@@ -152,9 +152,11 @@ for check in release $ac_checking_flags
 do
 	case $check in
 	# these set all the flags to specific states
-	yes|all) ac_checking=1 ; ac_valgrind_checking= ;;
-	no|none|release) ac_checking= ; ac_valgrind_checking= ;;
+	yes|all) ac_checking=1 ; ac_assert_checking=1 ; ac_valgrind_checking= ;;
+	no|none) ac_checking= ; ac_assert_checking= ; ac_valgrind_checking= ;;
+	release) ac_checking= ; ac_assert_checking=1 ; ac_valgrind_checking= ;;
 	# these enable particular checks
+	assert) ac_assert_checking=1 ;;
 	misc) ac_checking=1 ;;
 	valgrind) ac_valgrind_checking=1 ;;
 	# accept
@@ -170,6 +172,11 @@ else
   AC_DEFINE(CHECKING_P, 0)
 fi
 
+if test x$ac_assert_checking != x ; then
+  AC_DEFINE(ENABLE_ASSERT_CHECKING, 1,
+[Define if you want assertions enabled.  This is a cheap check.])
+fi
+
 if test x$ac_valgrind_checking != x ; then
   AC_DEFINE(ENABLE_VALGRIND_CHECKING, 1,
 [Define if you want to workaround valgrind (a memory checker) warnings about
--- libcpp/configure.jj	2016-05-20 12:44:36.000000000 +0200
+++ libcpp/configure	2016-11-15 16:40:35.331607679 +0100
@@ -7288,9 +7288,11 @@ for check in release $ac_checking_flags
 do
 	case $check in
 	# these set all the flags to specific states
-	yes|all) ac_checking=1 ; ac_valgrind_checking= ;;
-	no|none|release) ac_checking= ; ac_valgrind_checking= ;;
+	yes|all) ac_checking=1 ; ac_assert_checking=1 ; ac_valgrind_checking= ;;
+	no|none) ac_checking= ; ac_assert_checking= ; ac_valgrind_checking= ;;
+	release) ac_checking= ; ac_assert_checking=1 ; ac_valgrind_checking= ;;
 	# these enable particular checks
+	assert) ac_assert_checking=1 ;;
 	misc) ac_checking=1 ;;
 	valgrind) ac_valgrind_checking=1 ;;
 	# accept
@@ -7308,6 +7310,12 @@ else
 
 fi
 
+if test x$ac_assert_checking != x ; then
+
+$as_echo "#define ENABLE_ASSERT_CHECKING 1" >>confdefs.h
+
+fi
+
 if test x$ac_valgrind_checking != x ; then
 
 $as_echo "#define ENABLE_VALGRIND_CHECKING 1" >>confdefs.h
--- libcpp/config.in.jj	2016-05-20 12:44:36.000000000 +0200
+++ libcpp/config.in	2016-11-15 16:40:38.000000000 +0100
@@ -14,6 +14,9 @@
 /* Define to 1 if using `alloca.c'. */
 #undef C_ALLOCA
 
+/* Define if you want assertions enabled. This is a cheap check. */
+#undef ENABLE_ASSERT_CHECKING
+
 /* Define to enable system headers canonicalization. */
 #undef ENABLE_CANONICAL_SYSTEM_HEADERS
 

	Jakub



More information about the Gcc-patches mailing list