| #![expect(clippy::unnecessary_cast, clippy::useless_vec, clippy::needless_borrow)] |
| |
| fn main() { |
| let vec = vec![b'a', b'b', b'c']; |
| let ptr = vec.as_ptr(); |
| |
| let offset_u8 = 1_u8; |
| let offset_usize = 1_usize; |
| let offset_isize = 1_isize; |
| |
| unsafe { |
| let _ = ptr.add(offset_usize); |
| //~^ ptr_offset_with_cast |
| let _ = ptr.offset(offset_isize as isize); |
| let _ = ptr.offset(offset_u8 as isize); |
| |
| let _ = ptr.wrapping_add(offset_usize); |
| //~^ ptr_offset_with_cast |
| let _ = ptr.wrapping_offset(offset_isize as isize); |
| let _ = ptr.wrapping_offset(offset_u8 as isize); |
| |
| let _ = S.offset(offset_usize as isize); |
| let _ = S.wrapping_offset(offset_usize as isize); |
| |
| let _ = (&ptr).add(offset_usize); |
| //~^ ptr_offset_with_cast |
| let _ = (&ptr).wrapping_add(offset_usize); |
| //~^ ptr_offset_with_cast |
| } |
| } |
| |
| #[derive(Clone, Copy)] |
| struct S; |
| |
| impl S { |
| fn offset(self, _: isize) -> Self { |
| self |
| } |
| fn wrapping_offset(self, _: isize) -> Self { |
| self |
| } |
| } |