@@ -88,28 +88,31 @@ fn runtest(me: &str) {
8888 assert ! ( !s. contains( "stack backtrace" ) && !s. contains( " - foo" ) ,
8989 "bad output3: {}" , s) ;
9090
91- // Make sure a stack trace is printed
92- let p = template ( me) . arg ( "double-fail" ) . spawn ( ) . unwrap ( ) ;
93- let out = p. wait_with_output ( ) . unwrap ( ) ;
94- assert ! ( !out. status. success( ) ) ;
95- let s = str:: from_utf8 ( & out. stderr ) . unwrap ( ) ;
96- // loosened the following from double::h to double:: due to
97- // spurious failures on mac, 32bit, optimized
98- assert ! ( s. contains( "stack backtrace" ) && contains_verbose_expected( s, "double" ) ,
99- "bad output3: {}" , s) ;
91+ #[ cfg( not( panic = "abort" ) ) ]
92+ {
93+ // Make sure a stack trace is printed
94+ let p = template ( me) . arg ( "double-fail" ) . spawn ( ) . unwrap ( ) ;
95+ let out = p. wait_with_output ( ) . unwrap ( ) ;
96+ assert ! ( !out. status. success( ) ) ;
97+ let s = str:: from_utf8 ( & out. stderr ) . unwrap ( ) ;
98+ // loosened the following from double::h to double:: due to
99+ // spurious failures on mac, 32bit, optimized
100+ assert ! ( s. contains( "stack backtrace" ) && contains_verbose_expected( s, "double" ) ,
101+ "bad output3: {}" , s) ;
100102
101- // Make sure a stack trace isn't printed too many times
102- let p = template ( me) . arg ( "double-fail" )
103- . env ( "RUST_BACKTRACE" , "1" ) . spawn ( ) . unwrap ( ) ;
104- let out = p. wait_with_output ( ) . unwrap ( ) ;
105- assert ! ( !out. status. success( ) ) ;
106- let s = str:: from_utf8 ( & out. stderr ) . unwrap ( ) ;
107- let mut i = 0 ;
108- for _ in 0 ..2 {
109- i += s[ i + 10 ..] . find ( "stack backtrace" ) . unwrap ( ) + 10 ;
103+ // Make sure a stack trace isn't printed too many times
104+ let p = template ( me) . arg ( "double-fail" )
105+ . env ( "RUST_BACKTRACE" , "1" ) . spawn ( ) . unwrap ( ) ;
106+ let out = p. wait_with_output ( ) . unwrap ( ) ;
107+ assert ! ( !out. status. success( ) ) ;
108+ let s = str:: from_utf8 ( & out. stderr ) . unwrap ( ) ;
109+ let mut i = 0 ;
110+ for _ in 0 ..2 {
111+ i += s[ i + 10 ..] . find ( "stack backtrace" ) . unwrap ( ) + 10 ;
112+ }
113+ assert ! ( s[ i + 10 ..] . find( "stack backtrace" ) . is_none( ) ,
114+ "bad output4: {}" , s) ;
110115 }
111- assert ! ( s[ i + 10 ..] . find( "stack backtrace" ) . is_none( ) ,
112- "bad output4: {}" , s) ;
113116}
114117
115118fn main ( ) {
0 commit comments