File tree Expand file tree Collapse file tree 1 file changed +10
-9
lines changed Expand file tree Collapse file tree 1 file changed +10
-9
lines changed Original file line number Diff line number Diff line change @@ -2643,15 +2643,16 @@ fn test_peek_mut() {
2643
2643
assert ! ( vec. peek_mut( ) . is_none( ) ) ;
2644
2644
vec. push ( 1 ) ;
2645
2645
vec. push ( 2 ) ;
2646
- if let Some ( mut p) = vec. peek_mut ( ) {
2647
- assert_eq ! ( * p, 2 ) ;
2648
- * p = 0 ;
2649
- assert_eq ! ( * p, 0 ) ;
2650
- PeekMut :: pop ( p) ;
2651
- assert_eq ! ( vec. len( ) , 1 ) ;
2652
- } else {
2653
- unreachable ! ( )
2654
- }
2646
+ let mut p = vec. peek_mut ( ) . unwrap ( ) ;
2647
+ assert_eq ! ( * p, 2 ) ;
2648
+ * p = 0 ;
2649
+ assert_eq ! ( * p, 0 ) ;
2650
+ drop ( p) ;
2651
+ assert_eq ! ( vec, vec![ 1 , 0 ] ) ;
2652
+ let p = vec. peek_mut ( ) . unwrap ( ) ;
2653
+ let p = PeekMut :: pop ( p) ;
2654
+ assert_eq ! ( p, 0 ) ;
2655
+ assert_eq ! ( vec, vec![ 1 ] ) ;
2655
2656
}
2656
2657
2657
2658
/// This assortment of tests, in combination with miri, verifies we handle UB on fishy arguments
You can’t perform that action at this time.
0 commit comments