#![allow(dead_code, deprecated, unused_variables, unused_mut)] use std::fmt::Write; fn main() -> Result<(), impl core::fmt::Debug> { let data = [1u8, 2, 3, 4, 5]; let mut ptr: *const u8 = data.as_ptr(); let step = 2; let end_rounded_up = ptr.wrapping_add(6); let mut out = String::new(); while ptr != end_rounded_up { unsafe { write!(& mut out, "{}, ", * ptr)?; } ptr = ptr.wrapping_add(step); } assert_eq!(out, "1, 3, 5, "); std::fmt::Result::Ok(()) }