///
/// The pointer can be later reconstructed with [`from_raw_parts`].
#[cfg(not(bootstrap))]
- #[unstable(feature = "ptr_metadata", issue = /* FIXME */ "none")]
- #[rustc_const_unstable(feature = "ptr_metadata", issue = /* FIXME */ "none")]
+ #[unstable(feature = "ptr_metadata", issue = "81513")]
+ #[rustc_const_unstable(feature = "ptr_metadata", issue = "81513")]
#[inline]
pub const fn to_raw_parts(self) -> (*const (), <T as super::Pointee>::Metadata) {
(self.cast(), super::metadata(self))
-#![unstable(feature = "ptr_metadata", issue = /* FIXME */ "none")]
+#![unstable(feature = "ptr_metadata", issue = "81513")]
use crate::fmt;
use crate::hash::{Hash, Hasher};
/// assert_eq!(std::mem::size_of::<&T>(), std::mem::size_of::<usize>())
/// }
/// ```
-#[unstable(feature = "ptr_metadata", issue = /* FIXME */ "none")]
+#[unstable(feature = "ptr_metadata", issue = "81513")]
// NOTE: don’t stabilize this before trait aliases are stable in the language?
pub trait Thin = Pointee<Metadata = ()>;
///
/// assert_eq!(std::ptr::metadata("foo"), 3_usize);
/// ```
-#[rustc_const_unstable(feature = "ptr_metadata", issue = /* FIXME */ "none")]
+#[rustc_const_unstable(feature = "ptr_metadata", issue = "81513")]
#[inline]
pub const fn metadata<T: ?Sized>(ptr: *const T) -> <T as Pointee>::Metadata {
// SAFETY: Accessing the value from the `PtrRepr` union is safe since *const T
/// For trait objects, the metadata must come from a pointer to the same underlying ereased type.
///
/// [`slice::from_raw_parts`]: crate::slice::from_raw_parts
-#[unstable(feature = "ptr_metadata", issue = /* FIXME */ "none")]
-#[rustc_const_unstable(feature = "ptr_metadata", issue = /* FIXME */ "none")]
+#[unstable(feature = "ptr_metadata", issue = "81513")]
+#[rustc_const_unstable(feature = "ptr_metadata", issue = "81513")]
#[inline]
pub const fn from_raw_parts<T: ?Sized>(
data_address: *const (),
/// raw `*mut` pointer is returned, as opposed to a raw `*const` pointer.
///
/// See the documentation of [`from_raw_parts`] for more details.
-#[unstable(feature = "ptr_metadata", issue = /* FIXME */ "none")]
-#[rustc_const_unstable(feature = "ptr_metadata", issue = /* FIXME */ "none")]
+#[unstable(feature = "ptr_metadata", issue = "81513")]
+#[rustc_const_unstable(feature = "ptr_metadata", issue = "81513")]
#[inline]
pub const fn from_raw_parts_mut<T: ?Sized>(
data_address: *mut (),
#[cfg(not(bootstrap))]
pub(crate) use metadata::PtrRepr;
#[cfg(not(bootstrap))]
-#[unstable(feature = "ptr_metadata", issue = /* FIXME */ "none")]
+#[unstable(feature = "ptr_metadata", issue = "81513")]
pub use metadata::{from_raw_parts, from_raw_parts_mut, metadata, DynMetadata, Pointee, Thin};
mod non_null;
///
/// The pointer can be later reconstructed with [`from_raw_parts_mut`].
#[cfg(not(bootstrap))]
- #[unstable(feature = "ptr_metadata", issue = /* FIXME */ "none")]
- #[rustc_const_unstable(feature = "ptr_metadata", issue = /* FIXME */ "none")]
+ #[unstable(feature = "ptr_metadata", issue = "81513")]
+ #[rustc_const_unstable(feature = "ptr_metadata", issue = "81513")]
#[inline]
pub const fn to_raw_parts(self) -> (*mut (), <T as super::Pointee>::Metadata) {
(self.cast(), super::metadata(self))
///
/// [`std::ptr::from_raw_parts`]: crate::ptr::from_raw_parts
#[cfg(not(bootstrap))]
- #[unstable(feature = "ptr_metadata", issue = /* FIXME */ "none")]
- #[rustc_const_unstable(feature = "ptr_metadata", issue = /* FIXME */ "none")]
+ #[unstable(feature = "ptr_metadata", issue = "81513")]
+ #[rustc_const_unstable(feature = "ptr_metadata", issue = "81513")]
#[inline]
pub const fn from_raw_parts(
data_address: NonNull<()>,
///
/// The pointer can be later reconstructed with [`NonNull::from_raw_parts`].
#[cfg(not(bootstrap))]
- #[unstable(feature = "ptr_metadata", issue = /* FIXME */ "none")]
- #[rustc_const_unstable(feature = "ptr_metadata", issue = /* FIXME */ "none")]
+ #[unstable(feature = "ptr_metadata", issue = "81513")]
+ #[rustc_const_unstable(feature = "ptr_metadata", issue = "81513")]
#[inline]
pub const fn to_raw_parts(self) -> (NonNull<()>, <T as super::Pointee>::Metadata) {
(self.cast(), super::metadata(self.as_ptr()))