@@ -34,7 +34,7 @@ macro_rules! do_test {
3434            } 
3535
3636            let  v = $input. to_owned( ) ; 
37-             let  _ = std :: panic:: catch_unwind( move || { 
37+             let  _ = panic:: catch_unwind( move || { 
3838                let  mut  v = v; 
3939                let  mut  panic_countdown = panic_countdown; 
4040                v. $func( |a,  b| { 
@@ -197,8 +197,7 @@ fn panic_safe() {
197197
198198    let  mut  rng = test_rng ( ) ; 
199199
200-     // Miri is too slow (but still need to `chain` to make the types match) 
201-     let  lens = if  cfg ! ( miri)  {  ( 1 ..10 ) . chain ( 0 ..0 )  }  else  {  ( 1 ..20 ) . chain ( 70 ..MAX_LEN )  } ; 
200+     let  lens = if  cfg ! ( miri)  {  ( 1 ..10 ) . chain ( 30 ..36 )  }  else  {  ( 1 ..20 ) . chain ( 70 ..MAX_LEN )  } ; 
202201    let  moduli:  & [ u32 ]  = if  cfg ! ( miri)  {  & [ 5 ]  }  else  {  & [ 5 ,  20 ,  50 ]  } ; 
203202
204203    for  len in  lens { 
@@ -294,15 +293,20 @@ fn test_sort() {
294293        } 
295294    } 
296295
297-     // Sort using a completely random comparison function. 
298-     // This will reorder the elements *somehow*, but won't panic. 
299-     let  mut  v = [ 0 ;  500 ] ; 
300-     for  i in  0 ..v. len ( )  { 
296+     const  ORD_VIOLATION_MAX_LEN :  usize  = 500 ; 
297+     let  mut  v = [ 0 ;  ORD_VIOLATION_MAX_LEN ] ; 
298+     for  i in  0 ..ORD_VIOLATION_MAX_LEN  { 
301299        v[ i]  = i as  i32 ; 
302300    } 
303-     v. sort_by ( |_,  _| * [ Less ,  Equal ,  Greater ] . choose ( & mut  rng) . unwrap ( ) ) ; 
301+ 
302+     // Sort using a completely random comparison function. This will reorder the elements *somehow*, 
303+     // it may panic but the original elements must still be present. 
304+     let  _ = panic:: catch_unwind ( move  || { 
305+         v. sort_by ( |_,  _| * [ Less ,  Equal ,  Greater ] . choose ( & mut  rng) . unwrap ( ) ) ; 
306+     } ) ; 
307+ 
304308    v. sort ( ) ; 
305-     for  i in  0 ..v . len ( )  { 
309+     for  i in  0 ..ORD_VIOLATION_MAX_LEN  { 
306310        assert_eq ! ( v[ i] ,  i as  i32 ) ; 
307311    } 
308312
0 commit comments