@@ -1647,16 +1647,15 @@ impl<T> *const [T] {
1647
1647
/// # Examples
1648
1648
///
1649
1649
/// ```rust
1650
- /// #![feature(slice_ptr_len)]
1651
- ///
1652
1650
/// use std::ptr;
1653
1651
///
1654
1652
/// let slice: *const [i8] = ptr::slice_from_raw_parts(ptr::null(), 3);
1655
1653
/// assert_eq!(slice.len(), 3);
1656
1654
/// ```
1657
1655
#[ inline]
1658
- #[ unstable( feature = "slice_ptr_len" , issue = "71146" ) ]
1659
- #[ rustc_const_unstable( feature = "const_slice_ptr_len" , issue = "71146" ) ]
1656
+ #[ stable( feature = "slice_ptr_len" , since = "CURRENT_RUSTC_VERSION" ) ]
1657
+ #[ rustc_const_stable( feature = "const_slice_ptr_len" , since = "CURRENT_RUSTC_VERSION" ) ]
1658
+ #[ rustc_allow_const_fn_unstable( ptr_metadata) ]
1660
1659
pub const fn len ( self ) -> usize {
1661
1660
metadata ( self )
1662
1661
}
@@ -1666,15 +1665,14 @@ impl<T> *const [T] {
1666
1665
/// # Examples
1667
1666
///
1668
1667
/// ```
1669
- /// #![feature(slice_ptr_len)]
1670
1668
/// use std::ptr;
1671
1669
///
1672
1670
/// let slice: *const [i8] = ptr::slice_from_raw_parts(ptr::null(), 3);
1673
1671
/// assert!(!slice.is_empty());
1674
1672
/// ```
1675
1673
#[ inline( always) ]
1676
- #[ unstable ( feature = "slice_ptr_len" , issue = "71146 " ) ]
1677
- #[ rustc_const_unstable ( feature = "const_slice_ptr_len" , issue = "71146 " ) ]
1674
+ #[ stable ( feature = "slice_ptr_len" , since = "CURRENT_RUSTC_VERSION " ) ]
1675
+ #[ rustc_const_stable ( feature = "const_slice_ptr_len" , since = "CURRENT_RUSTC_VERSION " ) ]
1678
1676
pub const fn is_empty ( self ) -> bool {
1679
1677
self . len ( ) == 0
1680
1678
}
@@ -1804,7 +1802,7 @@ impl<T, const N: usize> *const [T; N] {
1804
1802
/// # Examples
1805
1803
///
1806
1804
/// ```
1807
- /// #![feature(array_ptr_get, slice_ptr_len )]
1805
+ /// #![feature(array_ptr_get)]
1808
1806
///
1809
1807
/// let arr: *const [i32; 3] = &[1, 2, 4] as *const [i32; 3];
1810
1808
/// let slice: *const [i32] = arr.as_slice();
0 commit comments