File tree Expand file tree Collapse file tree 3 files changed +6
-6
lines changed Expand file tree Collapse file tree 3 files changed +6
-6
lines changed Original file line number Diff line number Diff line change @@ -3,5 +3,5 @@ fn main() {
33 let arr = [ 0u8 ; 8 ] ;
44 let ptr1 = arr. as_ptr ( ) ;
55 let ptr2 = ptr1. wrapping_add ( 4 ) ;
6- let _val = unsafe { ptr1. sub_ptr ( ptr2) } ; //~ERROR: first pointer has smaller address than second
6+ let _val = unsafe { ptr1. offset_from_unsigned ( ptr2) } ; //~ERROR: first pointer has smaller address than second
77}
Original file line number Diff line number Diff line change 11error: Undefined Behavior: `ptr_offset_from_unsigned` called when first pointer has smaller address than second: $ADDR < $ADDR
22 --> tests/fail/intrinsics/ptr_offset_from_unsigned_neg.rs:LL:CC
33 |
4- LL | let _val = unsafe { ptr1.sub_ptr (ptr2) };
5- | ^^^^^^^^^^^^^^^^^^ `ptr_offset_from_unsigned` called when first pointer has smaller address than second: $ADDR < $ADDR
4+ LL | let _val = unsafe { ptr1.offset_from_unsigned (ptr2) };
5+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `ptr_offset_from_unsigned` called when first pointer has smaller address than second: $ADDR < $ADDR
66 |
77 = help: this indicates a bug in the program: it performed an invalid operation, and caused Undefined Behavior
88 = help: see https://doc.rust-lang.org/nightly/reference/behavior-considered-undefined.html for further information
Original file line number Diff line number Diff line change @@ -21,7 +21,7 @@ fn smoke() {
2121 let _val = ptr. wrapping_sub ( 0 ) ;
2222 let _val = unsafe { ptr. sub ( 0 ) } ;
2323 let _val = unsafe { ptr. offset_from ( ptr) } ;
24- let _val = unsafe { ptr. sub_ptr ( ptr) } ;
24+ let _val = unsafe { ptr. offset_from_unsigned ( ptr) } ;
2525}
2626
2727fn test_offset_from ( ) {
@@ -32,14 +32,14 @@ fn test_offset_from() {
3232 let y = x. offset ( 12 ) ;
3333
3434 assert_eq ! ( y. offset_from( x) , 12 ) ;
35- assert_eq ! ( y. sub_ptr ( x) , 12 ) ;
35+ assert_eq ! ( y. offset_from_unsigned ( x) , 12 ) ;
3636 assert_eq ! ( x. offset_from( y) , -12 ) ;
3737 assert_eq ! ( ( y as * const u32 ) . offset_from( x as * const u32 ) , 12 / 4 ) ;
3838 assert_eq ! ( ( x as * const u32 ) . offset_from( y as * const u32 ) , -12 / 4 ) ;
3939
4040 let x = ( ( ( x as usize ) * 2 ) / 2 ) as * const u8 ;
4141 assert_eq ! ( y. offset_from( x) , 12 ) ;
42- assert_eq ! ( y. sub_ptr ( x) , 12 ) ;
42+ assert_eq ! ( y. offset_from_unsigned ( x) , 12 ) ;
4343 assert_eq ! ( x. offset_from( y) , -12 ) ;
4444 }
4545}
You can’t perform that action at this time.
0 commit comments