From a1fb429cbb7d7d3218ec0d8f061fc517c775a7bc Mon Sep 17 00:00:00 2001 From: Tshepang Mbambo Date: Wed, 1 Jul 2026 12:46:33 +0200 Subject: [PATCH] ptr doc: reduce use of unsafe block to where needed --- library/core/src/ptr/mod.rs | 40 ++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 21 deletions(-) diff --git a/library/core/src/ptr/mod.rs b/library/core/src/ptr/mod.rs index e41ede7498b06..9e035677fd836 100644 --- a/library/core/src/ptr/mod.rs +++ b/library/core/src/ptr/mod.rs @@ -300,27 +300,25 @@ //! represent the tagged pointer as an actual pointer and not a `usize`*. For instance: //! //! ``` -//! unsafe { -//! // A flag we want to pack into our pointer -//! static HAS_DATA: usize = 0x1; -//! static FLAG_MASK: usize = !HAS_DATA; -//! -//! // Our value, which must have enough alignment to have spare least-significant-bits. -//! let my_precious_data: u32 = 17; -//! assert!(align_of::() > 1); -//! -//! // Create a tagged pointer -//! let ptr = &my_precious_data as *const u32; -//! let tagged = ptr.map_addr(|addr| addr | HAS_DATA); -//! -//! // Check the flag: -//! if tagged.addr() & HAS_DATA != 0 { -//! // Untag and read the pointer -//! let data = *tagged.map_addr(|addr| addr & FLAG_MASK); -//! assert_eq!(data, 17); -//! } else { -//! unreachable!() -//! } +//! // A flag we want to pack into our pointer +//! static HAS_DATA: usize = 0x1; +//! static FLAG_MASK: usize = !HAS_DATA; +//! +//! // Our value, which must have enough alignment to have spare least-significant-bits. +//! let my_precious_data: u32 = 17; +//! assert!(align_of::() > 1); +//! +//! // Create a tagged pointer +//! let ptr = &my_precious_data as *const u32; +//! let tagged = ptr.map_addr(|addr| addr | HAS_DATA); +//! +//! // Check the flag: +//! if tagged.addr() & HAS_DATA != 0 { +//! // Untag and read the pointer +//! let data = unsafe { *tagged.map_addr(|addr| addr & FLAG_MASK) }; +//! assert_eq!(data, 17); +//! } else { +//! unreachable!() //! } //! ``` //!