@@ -2199,7 +2199,6 @@ impl<T> AtomicPtr<T> {
21992199 /// # Examples
22002200 ///
22012201 /// ```
2202- /// #![feature(strict_provenance_atomic_ptr)]
22032202 /// use core::sync::atomic::{AtomicPtr, Ordering};
22042203 ///
22052204 /// let atom = AtomicPtr::<i64>::new(core::ptr::null_mut());
@@ -2209,7 +2208,7 @@ impl<T> AtomicPtr<T> {
22092208 /// ```
22102209 #[ inline]
22112210 #[ cfg( target_has_atomic = "ptr" ) ]
2212- #[ unstable ( feature = "strict_provenance_atomic_ptr" , issue = "99108 " ) ]
2211+ #[ stable ( feature = "strict_provenance_atomic_ptr" , since = "CURRENT_RUSTC_VERSION " ) ]
22132212 #[ cfg_attr( miri, track_caller) ] // even without panics, this helps for Miri backtraces
22142213 pub fn fetch_ptr_add ( & self , val : usize , order : Ordering ) -> * mut T {
22152214 self . fetch_byte_add ( val. wrapping_mul ( size_of :: < T > ( ) ) , order)
@@ -2240,7 +2239,6 @@ impl<T> AtomicPtr<T> {
22402239 /// # Examples
22412240 ///
22422241 /// ```
2243- /// #![feature(strict_provenance_atomic_ptr)]
22442242 /// use core::sync::atomic::{AtomicPtr, Ordering};
22452243 ///
22462244 /// let array = [1i32, 2i32];
@@ -2254,7 +2252,7 @@ impl<T> AtomicPtr<T> {
22542252 /// ```
22552253 #[ inline]
22562254 #[ cfg( target_has_atomic = "ptr" ) ]
2257- #[ unstable ( feature = "strict_provenance_atomic_ptr" , issue = "99108 " ) ]
2255+ #[ stable ( feature = "strict_provenance_atomic_ptr" , since = "CURRENT_RUSTC_VERSION " ) ]
22582256 #[ cfg_attr( miri, track_caller) ] // even without panics, this helps for Miri backtraces
22592257 pub fn fetch_ptr_sub ( & self , val : usize , order : Ordering ) -> * mut T {
22602258 self . fetch_byte_sub ( val. wrapping_mul ( size_of :: < T > ( ) ) , order)
@@ -2279,7 +2277,6 @@ impl<T> AtomicPtr<T> {
22792277 /// # Examples
22802278 ///
22812279 /// ```
2282- /// #![feature(strict_provenance_atomic_ptr)]
22832280 /// use core::sync::atomic::{AtomicPtr, Ordering};
22842281 ///
22852282 /// let atom = AtomicPtr::<i64>::new(core::ptr::null_mut());
@@ -2289,7 +2286,7 @@ impl<T> AtomicPtr<T> {
22892286 /// ```
22902287 #[ inline]
22912288 #[ cfg( target_has_atomic = "ptr" ) ]
2292- #[ unstable ( feature = "strict_provenance_atomic_ptr" , issue = "99108 " ) ]
2289+ #[ stable ( feature = "strict_provenance_atomic_ptr" , since = "CURRENT_RUSTC_VERSION " ) ]
22932290 #[ cfg_attr( miri, track_caller) ] // even without panics, this helps for Miri backtraces
22942291 pub fn fetch_byte_add ( & self , val : usize , order : Ordering ) -> * mut T {
22952292 // SAFETY: data races are prevented by atomic intrinsics.
@@ -2315,7 +2312,6 @@ impl<T> AtomicPtr<T> {
23152312 /// # Examples
23162313 ///
23172314 /// ```
2318- /// #![feature(strict_provenance_atomic_ptr)]
23192315 /// use core::sync::atomic::{AtomicPtr, Ordering};
23202316 ///
23212317 /// let mut arr = [0i64, 1];
@@ -2325,7 +2321,7 @@ impl<T> AtomicPtr<T> {
23252321 /// ```
23262322 #[ inline]
23272323 #[ cfg( target_has_atomic = "ptr" ) ]
2328- #[ unstable ( feature = "strict_provenance_atomic_ptr" , issue = "99108 " ) ]
2324+ #[ stable ( feature = "strict_provenance_atomic_ptr" , since = "CURRENT_RUSTC_VERSION " ) ]
23292325 #[ cfg_attr( miri, track_caller) ] // even without panics, this helps for Miri backtraces
23302326 pub fn fetch_byte_sub ( & self , val : usize , order : Ordering ) -> * mut T {
23312327 // SAFETY: data races are prevented by atomic intrinsics.
@@ -2361,7 +2357,6 @@ impl<T> AtomicPtr<T> {
23612357 /// # Examples
23622358 ///
23632359 /// ```
2364- /// #![feature(strict_provenance_atomic_ptr)]
23652360 /// use core::sync::atomic::{AtomicPtr, Ordering};
23662361 ///
23672362 /// let pointer = &mut 3i64 as *mut i64;
@@ -2376,7 +2371,7 @@ impl<T> AtomicPtr<T> {
23762371 /// ```
23772372 #[ inline]
23782373 #[ cfg( target_has_atomic = "ptr" ) ]
2379- #[ unstable ( feature = "strict_provenance_atomic_ptr" , issue = "99108 " ) ]
2374+ #[ stable ( feature = "strict_provenance_atomic_ptr" , since = "CURRENT_RUSTC_VERSION " ) ]
23802375 #[ cfg_attr( miri, track_caller) ] // even without panics, this helps for Miri backtraces
23812376 pub fn fetch_or ( & self , val : usize , order : Ordering ) -> * mut T {
23822377 // SAFETY: data races are prevented by atomic intrinsics.
@@ -2412,7 +2407,6 @@ impl<T> AtomicPtr<T> {
24122407 /// # Examples
24132408 ///
24142409 /// ```
2415- /// #![feature(strict_provenance_atomic_ptr)]
24162410 /// use core::sync::atomic::{AtomicPtr, Ordering};
24172411 ///
24182412 /// let pointer = &mut 3i64 as *mut i64;
@@ -2426,7 +2420,7 @@ impl<T> AtomicPtr<T> {
24262420 /// ```
24272421 #[ inline]
24282422 #[ cfg( target_has_atomic = "ptr" ) ]
2429- #[ unstable ( feature = "strict_provenance_atomic_ptr" , issue = "99108 " ) ]
2423+ #[ stable ( feature = "strict_provenance_atomic_ptr" , since = "CURRENT_RUSTC_VERSION " ) ]
24302424 #[ cfg_attr( miri, track_caller) ] // even without panics, this helps for Miri backtraces
24312425 pub fn fetch_and ( & self , val : usize , order : Ordering ) -> * mut T {
24322426 // SAFETY: data races are prevented by atomic intrinsics.
@@ -2462,7 +2456,6 @@ impl<T> AtomicPtr<T> {
24622456 /// # Examples
24632457 ///
24642458 /// ```
2465- /// #![feature(strict_provenance_atomic_ptr)]
24662459 /// use core::sync::atomic::{AtomicPtr, Ordering};
24672460 ///
24682461 /// let pointer = &mut 3i64 as *mut i64;
@@ -2474,7 +2467,7 @@ impl<T> AtomicPtr<T> {
24742467 /// ```
24752468 #[ inline]
24762469 #[ cfg( target_has_atomic = "ptr" ) ]
2477- #[ unstable ( feature = "strict_provenance_atomic_ptr" , issue = "99108 " ) ]
2470+ #[ stable ( feature = "strict_provenance_atomic_ptr" , since = "CURRENT_RUSTC_VERSION " ) ]
24782471 #[ cfg_attr( miri, track_caller) ] // even without panics, this helps for Miri backtraces
24792472 pub fn fetch_xor ( & self , val : usize , order : Ordering ) -> * mut T {
24802473 // SAFETY: data races are prevented by atomic intrinsics.
0 commit comments