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 <ja...@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