3 // normalize-stderr-test "alloc\d+" -> "allocN"
4 // normalize-stderr-test "0x7f+" -> "0x7f..f"
7 pub const BEFORE_START
: *const u8 = unsafe { (&0u8 as *const u8).offset(-1) }
; //~NOTE
8 pub const AFTER_END
: *const u8 = unsafe { (&0u8 as *const u8).offset(2) }
; //~NOTE
9 pub const AFTER_ARRAY
: *const u8 = unsafe { [0u8; 100].as_ptr().offset(101) }
; //~NOTE
11 pub const OVERFLOW
: *const u16 = unsafe { [0u16; 1].as_ptr().offset(isize::MAX) }
; //~NOTE
12 pub const UNDERFLOW
: *const u16 = unsafe { [0u16; 1].as_ptr().offset(isize::MIN) }
; //~NOTE
13 pub const OVERFLOW_ADDRESS_SPACE
: *const u8 = unsafe { (usize::MAX as *const u8).offset(2) }
; //~NOTE
14 pub const UNDERFLOW_ADDRESS_SPACE
: *const u8 = unsafe { (1 as *const u8).offset(-2) }
; //~NOTE
15 pub const NEGATIVE_OFFSET
: *const u8 = unsafe { [0u8; 1].as_ptr().wrapping_offset(-2).offset(-2) }
; //~NOTE
17 pub const ZERO_SIZED_ALLOC
: *const u8 = unsafe { [0u8; 0].as_ptr().offset(1) }
; //~NOTE
18 pub const DANGLING
: *const u8 = unsafe { ptr::NonNull::<u8>::dangling().as_ptr().offset(4) }
; //~NOTE
20 // Right now, a zero offset from null is UB
21 pub const NULL_OFFSET_ZERO
: *const u8 = unsafe { ptr::null::<u8>().offset(0) }
; //~NOTE
23 // Make sure that we don't panic when computing abs(offset*size_of::<T>())
24 pub const UNDERFLOW_ABS
: *const u8 = unsafe { (usize::MAX as *const u8).offset(isize::MIN) }
; //~NOTE