Hi, This patch changes the testsuite to compile all tests with the same GDCFLAGS as used to build the library. Notably, this would now be using "-O2", whereas before the testsuite was compiling all tests with "-O0".
That we are now compiling with "-O2", there is a possibility of previously hidden bugs getting exposed. Likewise, the time it takes to run the libphobos testsuite has increased by some considerable measure, especially the template-heavy libphobos.phobos and libphobos.phobos_shared unittests. If it is a noticeable problem, then can consider overriding these two test programs with "-O0" if run_expensive_tests is disabled. Bootstrapped and regression tested on x86_64-linux-gnu with --target_board configurations -m64,-m32,-mx32. Testsuite summaries: === gdc tests === Running target unix/-m32 === gdc Summary for unix/-m32 === # of expected passes 30546 Running target unix/-m64 === gdc Summary for unix/-m64 === # of expected passes 30546 Running target unix/-mx32 === gdc Summary for unix/-mx32 === # of expected passes 30546 === gdc Summary === # of expected passes 91638 === libphobos tests === Running target unix/-m32 === libphobos Summary for unix/-m32 === # of expected passes 752 # of unsupported tests 2 Running target unix/-m64 === libphobos Summary for unix/-m64 === # of expected passes 756 Running target unix/-mx32 FAIL: libphobos.phobos/std/experimental/allocator/building_blocks/kernighan_ritchie.d execution test FAIL: libphobos.phobos_shared/std/experimental/allocator/building_blocks/kernighan_ritchie.d execution test === libphobos Summary for unix/-mx32 === # of expected passes 750 # of unexpected failures 2 # of unsupported tests 2 === libphobos Summary === # of expected passes 2258 # of unexpected failures 2 # of unsupported tests 4 The new failure on X32 is caused by glibc bug in syscall interface: https://sourceware.org/bugzilla/show_bug.cgi?id=25810 Committed to mainline. Regards Iain. --- libphobos/ChangeLog: * Makefile.in: Regenerate. * configure: Regenerate. * configure.ac: Remove GDCFLAGSX. * libdruntime/Makefile.in: Regenerate. * src/Makefile.in: Regenerate. * testsuite/Makefile.in: Regenerate. * testsuite/testsuite_flags.in: Use GDCFLAGS in --gdcflags. * testsuite/libphobos.thread/fiber_guard_page.d: Test using -O0. --- libphobos/Makefile.in | 1 - libphobos/configure | 10 ++-------- libphobos/configure.ac | 5 ----- libphobos/libdruntime/Makefile.in | 1 - libphobos/src/Makefile.in | 1 - libphobos/testsuite/Makefile.in | 1 - .../testsuite/libphobos.thread/fiber_guard_page.d | 1 + libphobos/testsuite/testsuite_flags.in | 2 +- 8 files changed, 4 insertions(+), 18 deletions(-) diff --git a/libphobos/Makefile.in b/libphobos/Makefile.in index b464d605232..e51c2158b20 100644 --- a/libphobos/Makefile.in +++ b/libphobos/Makefile.in @@ -230,7 +230,6 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GDC = @GDC@ GDCFLAGS = @GDCFLAGS@ -GDCFLAGSX = @GDCFLAGSX@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ diff --git a/libphobos/configure b/libphobos/configure index 2658cc1728a..c2b49132fda 100755 --- a/libphobos/configure +++ b/libphobos/configure @@ -634,7 +634,6 @@ am__EXEEXT_TRUE LTLIBOBJS LIBOBJS WARN_DFLAGS -GDCFLAGSX libtool_VERSION SPEC_PHOBOS_DEPS CHECKING_DFLAGS @@ -11650,7 +11649,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11653 "configure" +#line 11652 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11756,7 +11755,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11759 "configure" +#line 11758 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -15433,11 +15432,6 @@ if test -z "$GDCFLAGS"; then fi -if test -z "$GDCFLAGSX"; then - GDCFLAGSX="-g" -fi - - WARN_DFLAGS="-Wall $WERROR_FLAG" diff --git a/libphobos/configure.ac b/libphobos/configure.ac index 9de36c84be7..c21da5908d0 100644 --- a/libphobos/configure.ac +++ b/libphobos/configure.ac @@ -256,11 +256,6 @@ if test -z "$GDCFLAGS"; then fi AC_SUBST(GDCFLAGS) -if test -z "$GDCFLAGSX"; then - GDCFLAGSX="-g" -fi -AC_SUBST(GDCFLAGSX) - WARN_DFLAGS="-Wall $WERROR_FLAG" AC_SUBST(WARN_DFLAGS) diff --git a/libphobos/libdruntime/Makefile.in b/libphobos/libdruntime/Makefile.in index 3bb023ffc97..4130e96d7be 100644 --- a/libphobos/libdruntime/Makefile.in +++ b/libphobos/libdruntime/Makefile.in @@ -596,7 +596,6 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GDC = @GDC@ GDCFLAGS = @GDCFLAGS@ -GDCFLAGSX = @GDCFLAGSX@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ diff --git a/libphobos/src/Makefile.in b/libphobos/src/Makefile.in index e1b0588a690..4b1ae863a3f 100644 --- a/libphobos/src/Makefile.in +++ b/libphobos/src/Makefile.in @@ -346,7 +346,6 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GDC = @GDC@ GDCFLAGS = @GDCFLAGS@ -GDCFLAGSX = @GDCFLAGSX@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ diff --git a/libphobos/testsuite/Makefile.in b/libphobos/testsuite/Makefile.in index 6f0eaf83405..66077fc19a9 100644 --- a/libphobos/testsuite/Makefile.in +++ b/libphobos/testsuite/Makefile.in @@ -174,7 +174,6 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GDC = @GDC@ GDCFLAGS = @GDCFLAGS@ -GDCFLAGSX = @GDCFLAGSX@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ diff --git a/libphobos/testsuite/libphobos.thread/fiber_guard_page.d b/libphobos/testsuite/libphobos.thread/fiber_guard_page.d index 33a74597a09..49c22658542 100644 --- a/libphobos/testsuite/libphobos.thread/fiber_guard_page.d +++ b/libphobos/testsuite/libphobos.thread/fiber_guard_page.d @@ -1,3 +1,4 @@ +// { dg-options "-O0" } // { dg-shouldfail "segv or bus error" } import core.thread; import core.sys.posix.sys.mman; diff --git a/libphobos/testsuite/testsuite_flags.in b/libphobos/testsuite/testsuite_flags.in index 43e42810434..14b67950607 100755 --- a/libphobos/testsuite/testsuite_flags.in +++ b/libphobos/testsuite/testsuite_flags.in @@ -28,7 +28,7 @@ case ${query} in ;; --gdcflags) GDCFLAGS_default="-fmessage-length=0 -fno-show-column" - GDCFLAGS_config="@WARN_DFLAGS@ @GDCFLAGSX@ -fno-release -funittest" + GDCFLAGS_config="@WARN_DFLAGS@ @GDCFLAGS@ -fno-release -funittest" echo ${GDCFLAGS_default} ${GDCFLAGS_config} ;; --gdcpaths) -- 2.20.1