Skip to content

Commit 45bc746

Browse files
SaltyKitkatdtolnay
authored andcommitted
stabilize const_ptr_offset
1 parent 01c4c41 commit 45bc746

File tree

14 files changed

+18
-27
lines changed

14 files changed

+18
-27
lines changed

library/alloc/tests/lib.rs

-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
#![feature(const_intrinsic_copy)]
1111
#![feature(const_mut_refs)]
1212
#![feature(const_nonnull_slice_from_raw_parts)]
13-
#![feature(const_ptr_offset)]
1413
#![feature(const_ptr_write)]
1514
#![feature(const_try)]
1615
#![feature(core_intrinsics)]

library/core/src/intrinsics.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -1168,7 +1168,7 @@ extern "rust-intrinsic" {
11681168
///
11691169
/// The stabilized version of this intrinsic is [`pointer::offset`].
11701170
#[must_use = "returns a new pointer rather than modifying its argument"]
1171-
#[rustc_const_unstable(feature = "const_ptr_offset", issue = "71499")]
1171+
#[rustc_const_stable(feature = "const_ptr_offset", since = "1.60.0")]
11721172
pub fn offset<T>(dst: *const T, offset: isize) -> *const T;
11731173

11741174
/// Calculates the offset from a pointer, potentially wrapping.
@@ -1185,7 +1185,7 @@ extern "rust-intrinsic" {
11851185
///
11861186
/// The stabilized version of this intrinsic is [`pointer::wrapping_offset`].
11871187
#[must_use = "returns a new pointer rather than modifying its argument"]
1188-
#[rustc_const_unstable(feature = "const_ptr_offset", issue = "71499")]
1188+
#[rustc_const_stable(feature = "const_ptr_offset", since = "1.60.0")]
11891189
pub fn arith_offset<T>(dst: *const T, offset: isize) -> *const T;
11901190

11911191
/// Equivalent to the appropriate `llvm.memcpy.p0i8.0i8.*` intrinsic, with

library/core/src/lib.rs

-1
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,6 @@
125125
#![feature(const_pin)]
126126
#![feature(const_replace)]
127127
#![feature(const_ptr_is_null)]
128-
#![feature(const_ptr_offset)]
129128
#![feature(const_ptr_offset_from)]
130129
#![feature(const_ptr_read)]
131130
#![feature(const_ptr_write)]

library/core/src/ptr/const_ptr.rs

+6-6
Original file line numberDiff line numberDiff line change
@@ -285,7 +285,7 @@ impl<T: ?Sized> *const T {
285285
/// ```
286286
#[stable(feature = "rust1", since = "1.0.0")]
287287
#[must_use = "returns a new pointer rather than modifying its argument"]
288-
#[rustc_const_unstable(feature = "const_ptr_offset", issue = "71499")]
288+
#[rustc_const_stable(feature = "const_ptr_offset", since = "1.60.0")]
289289
#[inline(always)]
290290
pub const unsafe fn offset(self, count: isize) -> *const T
291291
where
@@ -347,7 +347,7 @@ impl<T: ?Sized> *const T {
347347
/// ```
348348
#[stable(feature = "ptr_wrapping_offset", since = "1.16.0")]
349349
#[must_use = "returns a new pointer rather than modifying its argument"]
350-
#[rustc_const_unstable(feature = "const_ptr_offset", issue = "71499")]
350+
#[rustc_const_stable(feature = "const_ptr_offset", since = "1.60.0")]
351351
#[inline(always)]
352352
pub const fn wrapping_offset(self, count: isize) -> *const T
353353
where
@@ -566,7 +566,7 @@ impl<T: ?Sized> *const T {
566566
/// ```
567567
#[stable(feature = "pointer_methods", since = "1.26.0")]
568568
#[must_use = "returns a new pointer rather than modifying its argument"]
569-
#[rustc_const_unstable(feature = "const_ptr_offset", issue = "71499")]
569+
#[rustc_const_stable(feature = "const_ptr_offset", since = "1.60.0")]
570570
#[inline(always)]
571571
pub const unsafe fn add(self, count: usize) -> Self
572572
where
@@ -630,7 +630,7 @@ impl<T: ?Sized> *const T {
630630
/// ```
631631
#[stable(feature = "pointer_methods", since = "1.26.0")]
632632
#[must_use = "returns a new pointer rather than modifying its argument"]
633-
#[rustc_const_unstable(feature = "const_ptr_offset", issue = "71499")]
633+
#[rustc_const_stable(feature = "const_ptr_offset", since = "1.60.0")]
634634
#[inline]
635635
pub const unsafe fn sub(self, count: usize) -> Self
636636
where
@@ -693,7 +693,7 @@ impl<T: ?Sized> *const T {
693693
/// ```
694694
#[stable(feature = "pointer_methods", since = "1.26.0")]
695695
#[must_use = "returns a new pointer rather than modifying its argument"]
696-
#[rustc_const_unstable(feature = "const_ptr_offset", issue = "71499")]
696+
#[rustc_const_stable(feature = "const_ptr_offset", since = "1.60.0")]
697697
#[inline(always)]
698698
pub const fn wrapping_add(self, count: usize) -> Self
699699
where
@@ -755,7 +755,7 @@ impl<T: ?Sized> *const T {
755755
/// ```
756756
#[stable(feature = "pointer_methods", since = "1.26.0")]
757757
#[must_use = "returns a new pointer rather than modifying its argument"]
758-
#[rustc_const_unstable(feature = "const_ptr_offset", issue = "71499")]
758+
#[rustc_const_stable(feature = "const_ptr_offset", since = "1.60.0")]
759759
#[inline]
760760
pub const fn wrapping_sub(self, count: usize) -> Self
761761
where

library/core/src/ptr/mut_ptr.rs

+6-6
Original file line numberDiff line numberDiff line change
@@ -295,7 +295,7 @@ impl<T: ?Sized> *mut T {
295295
/// ```
296296
#[stable(feature = "rust1", since = "1.0.0")]
297297
#[must_use = "returns a new pointer rather than modifying its argument"]
298-
#[rustc_const_unstable(feature = "const_ptr_offset", issue = "71499")]
298+
#[rustc_const_stable(feature = "const_ptr_offset", since = "1.60.0")]
299299
#[inline(always)]
300300
pub const unsafe fn offset(self, count: isize) -> *mut T
301301
where
@@ -358,7 +358,7 @@ impl<T: ?Sized> *mut T {
358358
/// ```
359359
#[stable(feature = "ptr_wrapping_offset", since = "1.16.0")]
360360
#[must_use = "returns a new pointer rather than modifying its argument"]
361-
#[rustc_const_unstable(feature = "const_ptr_offset", issue = "71499")]
361+
#[rustc_const_stable(feature = "const_ptr_offset", since = "1.60.0")]
362362
#[inline(always)]
363363
pub const fn wrapping_offset(self, count: isize) -> *mut T
364364
where
@@ -680,7 +680,7 @@ impl<T: ?Sized> *mut T {
680680
/// ```
681681
#[stable(feature = "pointer_methods", since = "1.26.0")]
682682
#[must_use = "returns a new pointer rather than modifying its argument"]
683-
#[rustc_const_unstable(feature = "const_ptr_offset", issue = "71499")]
683+
#[rustc_const_stable(feature = "const_ptr_offset", since = "1.60.0")]
684684
#[inline(always)]
685685
pub const unsafe fn add(self, count: usize) -> Self
686686
where
@@ -744,7 +744,7 @@ impl<T: ?Sized> *mut T {
744744
/// ```
745745
#[stable(feature = "pointer_methods", since = "1.26.0")]
746746
#[must_use = "returns a new pointer rather than modifying its argument"]
747-
#[rustc_const_unstable(feature = "const_ptr_offset", issue = "71499")]
747+
#[rustc_const_stable(feature = "const_ptr_offset", since = "1.60.0")]
748748
#[inline]
749749
pub const unsafe fn sub(self, count: usize) -> Self
750750
where
@@ -807,7 +807,7 @@ impl<T: ?Sized> *mut T {
807807
/// ```
808808
#[stable(feature = "pointer_methods", since = "1.26.0")]
809809
#[must_use = "returns a new pointer rather than modifying its argument"]
810-
#[rustc_const_unstable(feature = "const_ptr_offset", issue = "71499")]
810+
#[rustc_const_stable(feature = "const_ptr_offset", since = "1.60.0")]
811811
#[inline(always)]
812812
pub const fn wrapping_add(self, count: usize) -> Self
813813
where
@@ -869,7 +869,7 @@ impl<T: ?Sized> *mut T {
869869
/// ```
870870
#[stable(feature = "pointer_methods", since = "1.26.0")]
871871
#[must_use = "returns a new pointer rather than modifying its argument"]
872-
#[rustc_const_unstable(feature = "const_ptr_offset", issue = "71499")]
872+
#[rustc_const_stable(feature = "const_ptr_offset", since = "1.60.0")]
873873
#[inline]
874874
pub const fn wrapping_sub(self, count: usize) -> Self
875875
where

library/core/src/slice/mod.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -478,7 +478,7 @@ impl<T> [T] {
478478
/// assert_eq!(x, &[3, 4, 6]);
479479
/// ```
480480
#[stable(feature = "rust1", since = "1.0.0")]
481-
#[rustc_const_unstable(feature = "const_ptr_offset", issue = "71499")]
481+
#[rustc_const_stable(feature = "const_ptr_offset", since = "1.60.0")]
482482
#[inline]
483483
pub const fn as_mut_ptr(&mut self) -> *mut T {
484484
self as *mut [T] as *mut T
@@ -513,7 +513,7 @@ impl<T> [T] {
513513
///
514514
/// [`as_ptr`]: slice::as_ptr
515515
#[stable(feature = "slice_ptr_range", since = "1.48.0")]
516-
#[rustc_const_unstable(feature = "const_ptr_offset", issue = "71499")]
516+
#[rustc_const_stable(feature = "const_ptr_offset", since = "1.60.0")]
517517
#[inline]
518518
pub const fn as_ptr_range(&self) -> Range<*const T> {
519519
let start = self.as_ptr();
@@ -555,7 +555,7 @@ impl<T> [T] {
555555
///
556556
/// [`as_mut_ptr`]: slice::as_mut_ptr
557557
#[stable(feature = "slice_ptr_range", since = "1.48.0")]
558-
#[rustc_const_unstable(feature = "const_ptr_offset", issue = "71499")]
558+
#[rustc_const_stable(feature = "const_ptr_offset", since = "1.60.0")]
559559
#[inline]
560560
pub const fn as_mut_ptr_range(&mut self) -> Range<*mut T> {
561561
let start = self.as_mut_ptr();

library/core/tests/lib.rs

-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
#![feature(const_ptr_as_ref)]
2323
#![feature(const_ptr_read)]
2424
#![feature(const_ptr_write)]
25-
#![feature(const_ptr_offset)]
2625
#![feature(const_trait_impl)]
2726
#![feature(const_likely)]
2827
#![feature(core_intrinsics)]

src/test/ui/const-ptr/out_of_bounds_read.rs

-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
// error-pattern: evaluation of constant value failed
22

33
#![feature(const_ptr_read)]
4-
#![feature(const_ptr_offset)]
54

65
fn main() {
76
use std::ptr;

src/test/ui/consts/copy-intrinsic.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
// ignore-tidy-linelength
44
#![feature(intrinsics, staged_api)]
5-
#![feature(const_mut_refs, const_intrinsic_copy, const_ptr_offset)]
5+
#![feature(const_mut_refs, const_intrinsic_copy)]
66
use std::mem;
77

88
extern "rust-intrinsic" {

src/test/ui/consts/invalid-union.rs

-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
// build-fail
1010
// stderr-per-bitwidth
1111
#![feature(const_mut_refs)]
12-
#![feature(const_ptr_offset)]
1312
#![feature(untagged_unions)]
1413
use std::cell::Cell;
1514

src/test/ui/consts/issue-miri-1910.rs

-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
// error-pattern unable to turn pointer into raw bytes
22
#![feature(const_ptr_read)]
3-
#![feature(const_ptr_offset)]
43

54
const C: () = unsafe {
65
let foo = Some(&42 as *const i32);

src/test/ui/consts/offset.rs

-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
// run-pass
2-
#![feature(const_ptr_offset)]
32
#![feature(const_ptr_offset_from)]
43
use std::ptr;
54

src/test/ui/consts/offset_ub.rs

-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
#![feature(const_ptr_offset)]
21
use std::ptr;
32

43
// normalize-stderr-test "alloc\d+" -> "allocN"

src/test/ui/consts/ptr_comparisons.rs

-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
#![feature(
88
core_intrinsics,
99
const_raw_ptr_comparison,
10-
const_ptr_offset,
1110
)]
1211

1312
const FOO: &usize = &42;

0 commit comments

Comments
 (0)