Skip to content

Commit 0dc250c

Browse files
committed
Stabilize const_slice_from_raw_parts_mut
1 parent c817d5d commit 0dc250c

File tree

5 files changed

+7
-5
lines changed

5 files changed

+7
-5
lines changed

library/alloc/tests/lib.rs

-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
#![feature(const_cow_is_borrowed)]
88
#![feature(const_heap)]
99
#![cfg_attr(bootstrap, feature(const_mut_refs))]
10-
#![feature(const_slice_from_raw_parts_mut)]
1110
#![feature(const_ptr_write)]
1211
#![feature(const_try)]
1312
#![feature(core_intrinsics)]

library/core/src/lib.rs

-1
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,6 @@
147147
#![feature(const_replace)]
148148
#![feature(const_size_of_val)]
149149
#![feature(const_size_of_val_raw)]
150-
#![feature(const_slice_from_raw_parts_mut)]
151150
#![feature(const_slice_from_ref)]
152151
#![feature(const_slice_split_at_mut)]
153152
#![feature(const_str_as_mut)]

library/core/src/ptr/mod.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -992,7 +992,7 @@ pub const fn slice_from_raw_parts<T>(data: *const T, len: usize) -> *const [T] {
992992
/// ```
993993
#[inline]
994994
#[stable(feature = "slice_from_raw_parts", since = "1.42.0")]
995-
#[rustc_const_unstable(feature = "const_slice_from_raw_parts_mut", issue = "67456")]
995+
#[rustc_const_stable(feature = "const_slice_from_raw_parts_mut", since = "CURRENT_RUSTC_VERSION")]
996996
#[rustc_diagnostic_item = "ptr_slice_from_raw_parts_mut"]
997997
pub const fn slice_from_raw_parts_mut<T>(data: *mut T, len: usize) -> *mut [T] {
998998
from_raw_parts_mut(data, len)

library/core/src/ptr/non_null.rs

+4-1
Original file line numberDiff line numberDiff line change
@@ -1433,7 +1433,10 @@ impl<T> NonNull<[T]> {
14331433
/// (Note that this example artificially demonstrates a use of this method,
14341434
/// but `let slice = NonNull::from(&x[..]);` would be a better way to write code like this.)
14351435
#[stable(feature = "nonnull_slice_from_raw_parts", since = "1.70.0")]
1436-
#[rustc_const_unstable(feature = "const_slice_from_raw_parts_mut", issue = "67456")]
1436+
#[rustc_const_stable(
1437+
feature = "const_slice_from_raw_parts_mut",
1438+
since = "CURRENT_RUSTC_VERSION"
1439+
)]
14371440
#[must_use]
14381441
#[inline]
14391442
pub const fn slice_from_raw_parts(data: NonNull<T>, len: usize) -> Self {

library/core/src/slice/raw.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,8 @@ pub const unsafe fn from_raw_parts<'a, T>(data: *const T, len: usize) -> &'a [T]
171171
/// [`NonNull::dangling()`]: ptr::NonNull::dangling
172172
#[inline]
173173
#[stable(feature = "rust1", since = "1.0.0")]
174-
#[rustc_const_unstable(feature = "const_slice_from_raw_parts_mut", issue = "67456")]
174+
#[rustc_const_stable(feature = "const_slice_from_raw_parts_mut", since = "CURRENT_RUSTC_VERSION")]
175+
#[cfg_attr(bootstrap, rustc_allow_const_fn_unstable(const_mut_refs))]
175176
#[must_use]
176177
#[rustc_diagnostic_item = "slice_from_raw_parts_mut"]
177178
pub const unsafe fn from_raw_parts_mut<'a, T>(data: *mut T, len: usize) -> &'a mut [T] {

0 commit comments

Comments
 (0)