[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