@@ -528,7 +528,7 @@ impl<T> MaybeUninit<T> {
528
528
/// (Notice that the rules around references to uninitialized data are not finalized yet, but
529
529
/// until they are, it is advisable to avoid them.)
530
530
#[ stable( feature = "maybe_uninit" , since = "1.36.0" ) ]
531
- #[ rustc_const_unstable ( feature = "const_maybe_uninit_as_ptr" , issue = "75251 " ) ]
531
+ #[ rustc_const_stable ( feature = "const_maybe_uninit_as_ptr" , since = "1.59.0 " ) ]
532
532
#[ inline( always) ]
533
533
pub const fn as_ptr ( & self ) -> * const T {
534
534
// `MaybeUninit` and `ManuallyDrop` are both `repr(transparent)` so we can cast the pointer.
@@ -567,7 +567,7 @@ impl<T> MaybeUninit<T> {
567
567
/// (Notice that the rules around references to uninitialized data are not finalized yet, but
568
568
/// until they are, it is advisable to avoid them.)
569
569
#[ stable( feature = "maybe_uninit" , since = "1.36.0" ) ]
570
- #[ rustc_const_unstable( feature = "const_maybe_uninit_as_ptr " , issue = "75251" ) ]
570
+ #[ rustc_const_unstable( feature = "const_maybe_uninit_as_mut_ptr " , issue = "75251" ) ]
571
571
#[ inline( always) ]
572
572
pub const fn as_mut_ptr ( & mut self ) -> * mut T {
573
573
// `MaybeUninit` and `ManuallyDrop` are both `repr(transparent)` so we can cast the pointer.
@@ -620,7 +620,7 @@ impl<T> MaybeUninit<T> {
620
620
/// // `x` had not been initialized yet, so this last line caused undefined behavior. ⚠️
621
621
/// ```
622
622
#[ stable( feature = "maybe_uninit" , since = "1.36.0" ) ]
623
- #[ rustc_const_unstable ( feature = "const_maybe_uninit_assume_init" , issue = "none " ) ]
623
+ #[ rustc_const_stable ( feature = "const_maybe_uninit_assume_init" , since = "1.59.0 " ) ]
624
624
#[ inline( always) ]
625
625
#[ rustc_diagnostic_item = "assume_init" ]
626
626
#[ track_caller]
@@ -788,7 +788,8 @@ impl<T> MaybeUninit<T> {
788
788
/// }
789
789
/// ```
790
790
#[ stable( feature = "maybe_uninit_ref" , since = "1.55.0" ) ]
791
- #[ rustc_const_unstable( feature = "const_maybe_uninit_assume_init" , issue = "none" ) ]
791
+ #[ rustc_const_stable( feature = "const_maybe_uninit_assume_init" , since = "1.59.0" ) ]
792
+ #[ cfg_attr( bootstrap, rustc_allow_const_fn_unstable( const_raw_ptr_deref) ) ]
792
793
#[ inline( always) ]
793
794
pub const unsafe fn assume_init_ref ( & self ) -> & T {
794
795
// SAFETY: the caller must guarantee that `self` is initialized.
@@ -968,7 +969,7 @@ impl<T> MaybeUninit<T> {
968
969
///
969
970
/// [`assume_init_ref`]: MaybeUninit::assume_init_ref
970
971
#[ unstable( feature = "maybe_uninit_slice" , issue = "63569" ) ]
971
- #[ rustc_const_unstable( feature = "const_maybe_uninit_assume_init " , issue = "none " ) ]
972
+ #[ rustc_const_unstable( feature = "maybe_uninit_slice " , issue = "63569 " ) ]
972
973
#[ inline( always) ]
973
974
pub const unsafe fn slice_assume_init_ref ( slice : & [ Self ] ) -> & [ T ] {
974
975
// SAFETY: casting slice to a `*const [T]` is safe since the caller guarantees that
0 commit comments