about summary refs log tree commit diff
path: root/library
diff options
context:
space:
mode:
authorMaybe Waffle <waffle.lapkin@gmail.com>2022-05-26 13:06:29 +0400
committerMaybe Waffle <waffle.lapkin@gmail.com>2022-05-30 15:44:55 +0400
commit19caa8c89bc0cec7e34c4e98d12e524c5b3bbcfe (patch)
tree97c9897798a97ea5d06c7226f75508a14a5c860c /library
parent855fc022fe879f4e3493a024f9c6b981d6317612 (diff)
Make `from{,_mut}_ptr_range` const
- `from_ptr_range` uses `#![feature(slice_from_ptr_range_const)]`
- `from_mut_ptr_range` uses `#![feature(slice_from_mut_ptr_range_const)]`
Diffstat (limited to 'library')
-rw-r--r--library/core/src/slice/raw.rs6
1 files changed, 4 insertions, 2 deletions
diff --git a/library/core/src/slice/raw.rs b/library/core/src/slice/raw.rs
index 6bc60b04b5c..fa24a481a1f 100644
--- a/library/core/src/slice/raw.rs
+++ b/library/core/src/slice/raw.rs
@@ -213,7 +213,8 @@ pub const fn from_mut<T>(s: &mut T) -> &mut [T] {
 ///
 /// [valid]: ptr#safety
 #[unstable(feature = "slice_from_ptr_range", issue = "89792")]
-pub unsafe fn from_ptr_range<'a, T>(range: Range<*const T>) -> &'a [T] {
+#[rustc_const_unstable(feature = "slice_from_ptr_range_const", issue = "89792")]
+pub const unsafe fn from_ptr_range<'a, T>(range: Range<*const T>) -> &'a [T] {
     // SAFETY: the caller must uphold the safety contract for `from_ptr_range`.
     unsafe { from_raw_parts(range.start, range.end.sub_ptr(range.start)) }
 }
@@ -263,7 +264,8 @@ pub unsafe fn from_ptr_range<'a, T>(range: Range<*const T>) -> &'a [T] {
 ///
 /// [valid]: ptr#safety
 #[unstable(feature = "slice_from_ptr_range", issue = "89792")]
-pub unsafe fn from_mut_ptr_range<'a, T>(range: Range<*mut T>) -> &'a mut [T] {
+#[rustc_const_unstable(feature = "slice_from_mut_ptr_range_const", issue = "89792")]
+pub const unsafe fn from_mut_ptr_range<'a, T>(range: Range<*mut T>) -> &'a mut [T] {
     // SAFETY: the caller must uphold the safety contract for `from_mut_ptr_range`.
     unsafe { from_raw_parts_mut(range.start, range.end.sub_ptr(range.start)) }
 }