@@ -314,6 +314,7 @@ fn test_retain_predicate_order() {
314314}
315315
316316#[ test]
317+ #[ cfg_attr( not( panic = "unwind" ) , ignore = "test requires unwinding support" ) ]
317318fn test_retain_pred_panic_with_hole ( ) {
318319 let v = ( 0 ..5 ) . map ( Rc :: new) . collect :: < Vec < _ > > ( ) ;
319320 catch_unwind ( AssertUnwindSafe ( || {
@@ -331,6 +332,7 @@ fn test_retain_pred_panic_with_hole() {
331332}
332333
333334#[ test]
335+ #[ cfg_attr( not( panic = "unwind" ) , ignore = "test requires unwinding support" ) ]
334336fn test_retain_pred_panic_no_hole ( ) {
335337 let v = ( 0 ..5 ) . map ( Rc :: new) . collect :: < Vec < _ > > ( ) ;
336338 catch_unwind ( AssertUnwindSafe ( || {
@@ -346,6 +348,7 @@ fn test_retain_pred_panic_no_hole() {
346348}
347349
348350#[ test]
351+ #[ cfg_attr( not( panic = "unwind" ) , ignore = "test requires unwinding support" ) ]
349352fn test_retain_drop_panic ( ) {
350353 struct Wrap ( Rc < i32 > ) ;
351354
@@ -806,6 +809,7 @@ fn test_drain_end_overflow() {
806809}
807810
808811#[ test]
812+ #[ cfg_attr( not( panic = "unwind" ) , ignore = "test requires unwinding support" ) ]
809813fn test_drain_leak ( ) {
810814 static mut DROPS : i32 = 0 ;
811815
@@ -1038,6 +1042,7 @@ fn test_into_iter_clone() {
10381042}
10391043
10401044#[ test]
1045+ #[ cfg_attr( not( panic = "unwind" ) , ignore = "test requires unwinding support" ) ]
10411046fn test_into_iter_leak ( ) {
10421047 static mut DROPS : i32 = 0 ;
10431048
@@ -1195,6 +1200,7 @@ fn test_from_iter_specialization_head_tail_drop() {
11951200}
11961201
11971202#[ test]
1203+ #[ cfg_attr( not( panic = "unwind" ) , ignore = "test requires unwinding support" ) ]
11981204fn test_from_iter_specialization_panic_during_iteration_drops ( ) {
11991205 let drop_count: Vec < _ > = ( 0 ..=2 ) . map ( |_| Rc :: new ( ( ) ) ) . collect ( ) ;
12001206 let src: Vec < _ > = drop_count. iter ( ) . cloned ( ) . collect ( ) ;
@@ -1219,6 +1225,7 @@ fn test_from_iter_specialization_panic_during_iteration_drops() {
12191225}
12201226
12211227#[ test]
1228+ #[ cfg_attr( not( panic = "unwind" ) , ignore = "test requires unwinding support" ) ]
12221229fn test_from_iter_specialization_panic_during_drop_doesnt_leak ( ) {
12231230 static mut DROP_COUNTER_OLD : [ usize ; 5 ] = [ 0 ; 5 ] ;
12241231 static mut DROP_COUNTER_NEW : [ usize ; 2 ] = [ 0 ; 2 ] ;
@@ -1494,6 +1501,7 @@ fn drain_filter_complex() {
14941501// FIXME: re-enable emscripten once it can unwind again
14951502#[ test]
14961503#[ cfg( not( target_os = "emscripten" ) ) ]
1504+ #[ cfg_attr( not( panic = "unwind" ) , ignore = "test requires unwinding support" ) ]
14971505fn drain_filter_consumed_panic ( ) {
14981506 use std:: rc:: Rc ;
14991507 use std:: sync:: Mutex ;
@@ -1546,6 +1554,7 @@ fn drain_filter_consumed_panic() {
15461554// FIXME: Re-enable emscripten once it can catch panics
15471555#[ test]
15481556#[ cfg( not( target_os = "emscripten" ) ) ]
1557+ #[ cfg_attr( not( panic = "unwind" ) , ignore = "test requires unwinding support" ) ]
15491558fn drain_filter_unconsumed_panic ( ) {
15501559 use std:: rc:: Rc ;
15511560 use std:: sync:: Mutex ;
@@ -2414,6 +2423,7 @@ fn test_vec_dedup() {
24142423}
24152424
24162425#[ test]
2426+ #[ cfg_attr( not( panic = "unwind" ) , ignore = "test requires unwinding support" ) ]
24172427fn test_vec_dedup_panicking ( ) {
24182428 #[ derive( Debug ) ]
24192429 struct Panic < ' a > {
@@ -2470,6 +2480,7 @@ fn test_vec_dedup_panicking() {
24702480
24712481// Regression test for issue #82533
24722482#[ test]
2483+ #[ cfg_attr( not( panic = "unwind" ) , ignore = "test requires unwinding support" ) ]
24732484fn test_extend_from_within_panicking_clone ( ) {
24742485 struct Panic < ' dc > {
24752486 drop_count : & ' dc AtomicU32 ,
0 commit comments