r271806 make -k check-gcc RUNTESTFLAGS=dg.exp=g++.dg/cpp0x/noexcept15.C # of expected passes 5 # of unexpected failures 1 # of unsupported tests 1 FAIL: g++.dg/cpp0x/noexcept15.C -std=c++14 (test for excess errors) Executing on host: /home/seurer/gcc/build/gcc-test2/gcc/testsuite/g++/../../xg++ -B/home/seurer/gcc/build/gcc-test2/gcc/testsuite/g++/../../ /home/seurer/gcc/gcc-test2/gcc/testsuite/g++.dg/cpp0x/noexcept15.C -fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers -fdiagnostics-color=never -nostdinc++ -I/home/seurer/gcc/build/gcc-test2/powerpc64-unknown-linux-gnu/libstdc++-v3/include/powerpc64-unknown-linux-gnu -I/home/seurer/gcc/build/gcc-test2/powerpc64-unknown-linux-gnu/libstdc++-v3/include -I/home/seurer/gcc/gcc-test2/libstdc++-v3/libsupc++ -I/home/seurer/gcc/gcc-test2/libstdc++-v3/include/backward -I/home/seurer/gcc/gcc-test2/libstdc++-v3/testsuite/util -fmessage-length=0 -std=c++17 -pedantic-errors -Wno-long-long -S -o noexcept15.s (timeout = 300) spawn -ignore SIGHUP /home/seurer/gcc/build/gcc-test2/gcc/testsuite/g++/../../xg++ -B/home/seurer/gcc/build/gcc-test2/gcc/testsuite/g++/../../ /home/seurer/gcc/gcc-test2/gcc/testsuite/g++.dg/cpp0x/noexcept15.C -fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers -fdiagnostics-color=never -nostdinc++ -I/home/seurer/gcc/build/gcc-test2/powerpc64-unknown-linux-gnu/libstdc++-v3/include/powerpc64-unknown-linux-gnu -I/home/seurer/gcc/build/gcc-test2/powerpc64-unknown-linux-gnu/libstdc++-v3/include -I/home/seurer/gcc/gcc-test2/libstdc++-v3/libsupc++ -I/home/seurer/gcc/gcc-test2/libstdc++-v3/include/backward -I/home/seurer/gcc/gcc-test2/libstdc++-v3/testsuite/util -fmessage-length=0 -std=c++17 -pedantic-errors -Wno-long-long -S -o noexcept15.s /home/seurer/gcc/gcc-test2/gcc/testsuite/g++.dg/cpp0x/noexcept15.C: In instantiation of 'struct single<Blob>': /home/seurer/gcc/gcc-test2/gcc/testsuite/g++.dg/cpp0x/noexcept15.C:31:17: required from here /home/seurer/gcc/gcc-test2/gcc/testsuite/g++.dg/cpp0x/noexcept15.C:9:8: error: 'single<Tp>::elem' has incomplete type /home/seurer/gcc/gcc-test2/gcc/testsuite/g++.dg/cpp0x/noexcept15.C:26:7: note: forward declaration of 'class Blob' compiler exited with status 1 PASS: g++.dg/cpp0x/noexcept15.C -std=c++17 (test for errors, line 9) PASS: g++.dg/cpp0x/noexcept15.C -std=c++17 (test for warnings, line 26) PASS: g++.dg/cpp0x/noexcept15.C -std=c++17 (test for excess errors)
The failure happens on all targets. I need to figure out what it was originally testing, and then change the test to be independent of the standard library headers. C++ front end tests that depend on library headers are fragile, because the library is a moving target.
Patch: https://gcc.gnu.org/ml/gcc-patches/2019-06/msg00390.html
Fixed at r272120
Author: redi Date: Mon Jun 10 15:55:36 2019 New Revision: 272121 URL: https://gcc.gnu.org/viewcvs?rev=272121&root=gcc&view=rev Log: PR other/90695 reduce testcase to remove library dependency This reproduces the original ICE fixed by r178857 (tested at r178852 and r178860), without depending on a libstdc++ header that keeps changing. The number of errors differs between C++14 and C++17 modes, so the fixed test uses dg-excess-errors to match any number of them. The precise errors aren't what's being tested for here anyway, the point of the test is to verify the ICE in PR 50391 is fixed. PR other/90695 * g++.dg/cpp0x/noexcept15.C: Remove dependency on library header. Modified: trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/g++.dg/cpp0x/noexcept15.C