@@ -430,8 +430,7 @@ pub const unsafe fn swap_nonoverlapping<T>(x: *mut T, y: *mut T, count: usize) {
430
430
}
431
431
432
432
#[ inline]
433
- #[ rustc_const_unstable( feature = "const_swap" , issue = "83163" ) ]
434
- pub ( crate ) const unsafe fn swap_nonoverlapping_one < T > ( x : * mut T , y : * mut T ) {
433
+ pub ( crate ) unsafe fn swap_nonoverlapping_one < T > ( x : * mut T , y : * mut T ) {
435
434
// NOTE(eddyb) SPIR-V's Logical addressing model doesn't allow for arbitrary
436
435
// reinterpretation of values as (chunkable) byte arrays, and the loop in the
437
436
// block optimization in `swap_nonoverlapping_bytes` is hard to rewrite back
@@ -564,8 +563,7 @@ const unsafe fn swap_nonoverlapping_bytes(x: *mut u8, y: *mut u8, len: usize) {
564
563
/// ```
565
564
#[ inline]
566
565
#[ stable( feature = "rust1" , since = "1.0.0" ) ]
567
- #[ rustc_const_unstable( feature = "const_replace" , issue = "83164" ) ]
568
- pub const unsafe fn replace < T > ( dst : * mut T , mut src : T ) -> T {
566
+ pub unsafe fn replace < T > ( dst : * mut T , mut src : T ) -> T {
569
567
// SAFETY: the caller must guarantee that `dst` is valid to be
570
568
// cast to a mutable reference (valid for writes, aligned, initialized),
571
569
// and cannot overlap `src` since `dst` must point to a distinct
@@ -871,8 +869,7 @@ pub const unsafe fn read_unaligned<T>(src: *const T) -> T {
871
869
/// ```
872
870
#[ inline]
873
871
#[ stable( feature = "rust1" , since = "1.0.0" ) ]
874
- #[ rustc_const_unstable( feature = "const_ptr_write" , issue = "none" ) ]
875
- pub const unsafe fn write < T > ( dst : * mut T , src : T ) {
872
+ pub unsafe fn write < T > ( dst : * mut T , src : T ) {
876
873
// SAFETY: the caller must guarantee that `dst` is valid for writes.
877
874
// `dst` cannot overlap `src` because the caller has mutable access
878
875
// to `dst` while `src` is owned by this function.
0 commit comments