diff mbox series

[committed] libstdc++: XFAIL tests that depends on RTTI

Message ID YCaUq+v2DnXtOQrh@redhat.com
State New
Headers show
Series [committed] libstdc++: XFAIL tests that depends on RTTI | expand

Commit Message

Jonathan Wakely Feb. 12, 2021, 2:46 p.m. UTC
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.

Tested powerpc64le-linux. Committed to trunk.
commit c4ece1d96a105f51d7999b7afe9340d582731f5d
Author: Jonathan Wakely <jwakely@redhat.com>
Date:   Fri Feb 12 11:30:38 2021

    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 mbox series

Patch

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 <syncstream>
 #include <testsuite_hooks.h>
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.
 //