From fab4760d5cf827392ae375e919b8dbbb5c72967c Mon Sep 17 00:00:00 2001 From: Erick Tryzelaar Date: Wed, 13 May 2026 21:21:53 +0000 Subject: [PATCH] Only use `layout_for_ptr` feature for zerocopy tests This puts the use of the unstable feature `layout_for_ptr` behind `all(test, miri)`, since it is only necessary for zerocopy tests, not for downstream users. --- src/lib.rs | 2 +- src/pointer/ptr.rs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/lib.rs b/src/lib.rs index 0c66144932..3d666cf5df 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -325,7 +325,7 @@ #![cfg_attr(doc_cfg, feature(doc_cfg))] #![cfg_attr(__ZEROCOPY_INTERNAL_USE_ONLY_NIGHTLY_FEATURES_IN_TESTS, feature(coverage_attribute))] #![cfg_attr( - any(__ZEROCOPY_INTERNAL_USE_ONLY_NIGHTLY_FEATURES_IN_TESTS, miri), + any(__ZEROCOPY_INTERNAL_USE_ONLY_NIGHTLY_FEATURES_IN_TESTS, all(test, miri)), feature(layout_for_ptr) )] #![cfg_attr(all(test, __ZEROCOPY_INTERNAL_USE_ONLY_NIGHTLY_FEATURES_IN_TESTS), feature(test))] diff --git a/src/pointer/ptr.rs b/src/pointer/ptr.rs index 30e7a7080f..4ac7b8312f 100644 --- a/src/pointer/ptr.rs +++ b/src/pointer/ptr.rs @@ -233,7 +233,7 @@ mod _conversions { let raw = self.as_inner().as_non_null(); // SAFETY: `self` satisfies the `Aligned` invariant, so we know that // `raw` is validly-aligned for `T`. - #[cfg(miri)] + #[cfg(all(test, miri))] unsafe { crate::util::miri_promise_symbolic_alignment( raw.as_ptr().cast(), @@ -381,7 +381,7 @@ mod _conversions { let mut raw = self.as_inner().as_non_null(); // SAFETY: `self` satisfies the `Aligned` invariant, so we know that // `raw` is validly-aligned for `T`. - #[cfg(miri)] + #[cfg(all(test, miri))] unsafe { crate::util::miri_promise_symbolic_alignment( raw.as_ptr().cast(),