File tree Expand file tree Collapse file tree 1 file changed +12
-1
lines changed Expand file tree Collapse file tree 1 file changed +12
-1
lines changed Original file line number Diff line number Diff line change 1- // compile-flags: -Zmiri-tag-raw-pointers
1+ // compile-flags: -Zmiri-tag-raw-pointers -Zmiri-check-number-validity
22// Gather all references from a mutable iterator and make sure Miri notices if
33// using them is dangerous.
44fn test_all_refs < ' a , T : ' a > ( dummy : & mut T , iter : impl Iterator < Item = & ' a mut T > ) {
@@ -148,6 +148,16 @@ fn swap_remove() {
148148 vec. swap_remove ( 1 ) ;
149149}
150150
151+ fn reverse ( ) {
152+ #[ repr( align( 2 ) ) ]
153+ #[ derive( Debug ) ]
154+ struct Foo ( u8 ) ;
155+
156+ let mut v: Vec < _ > = ( 0 ..50 ) . map ( Foo ) . collect ( ) ;
157+ v. reverse ( ) ;
158+ assert ! ( v[ 0 ] . 0 == 49 ) ;
159+ }
160+
151161fn main ( ) {
152162 assert_eq ! ( vec_reallocate( ) . len( ) , 5 ) ;
153163
@@ -176,4 +186,5 @@ fn main() {
176186 sort ( ) ;
177187 swap ( ) ;
178188 swap_remove ( ) ;
189+ reverse ( ) ;
179190}
You can’t perform that action at this time.
0 commit comments