From: Jonathan Wakely Date: Fri, 12 Feb 2021 11:30:38 +0000 (+0000) Subject: libstdc++: XFAIL tests that depends on RTTI X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=c4ece1d96a105f51d7999b7afe9340d582731f5d;p=gcc.git libstdc++: XFAIL tests that depends on RTTI The std::emit_on_flush manipulator depends on dynamic_cast, so fails without RTTI. The std::async code can't catch a forced_unwind exception when RTTI is disabled, so it can't rethrow it either, and the test aborts. libstdc++-v3/ChangeLog: * testsuite/27_io/basic_ostream/emit/1.cc: Expect test to fail if -fno-rtti is used. * testsuite/30_threads/async/forced_unwind.cc: Expect test to abort if -fno-rtti is used. --- diff --git a/libstdc++-v3/testsuite/27_io/basic_ostream/emit/1.cc b/libstdc++-v3/testsuite/27_io/basic_ostream/emit/1.cc index d692c53b392..ac813942a47 100644 --- a/libstdc++-v3/testsuite/27_io/basic_ostream/emit/1.cc +++ b/libstdc++-v3/testsuite/27_io/basic_ostream/emit/1.cc @@ -19,6 +19,7 @@ // { dg-additional-options "-pthread" { target pthread } } // { dg-do run { target c++2a } } // { dg-require-effective-target cxx11-abi } +// { dg-xfail-run-if "cannot catch forced_unwind" { *-*-* } { "-fno-rtti" } } #include #include diff --git a/libstdc++-v3/testsuite/30_threads/async/forced_unwind.cc b/libstdc++-v3/testsuite/30_threads/async/forced_unwind.cc index ad7c8ff0232..2cc477850ce 100644 --- a/libstdc++-v3/testsuite/30_threads/async/forced_unwind.cc +++ b/libstdc++-v3/testsuite/30_threads/async/forced_unwind.cc @@ -3,6 +3,7 @@ // { dg-require-effective-target c++11 } // { dg-require-effective-target pthread } // { dg-require-gthreads "" } +// { dg-xfail-run-if "cannot catch forced_unwind" { *-*-* } { "-fno-rtti" } } // Copyright (C) 2014-2021 Free Software Foundation, Inc. //