Rollup merge of #148048 - thaliaarchi:stabilize-maybeuninit-write-slice, r=Mark-Simulacrum
Stabilize `maybe_uninit_write_slice` Stabilize feature `maybe_uninit_write_slice` (closes https://github.com/rust-lang/rust/issues/79995). Note that this also const-stabilizes `<[MaybeUninit<_>]>::write_copy_of_slice`. That method depends on `<[_]>::copy_from_slice`, which is already const-stable, and `<[MaybeUninit<_>]>::assume_init_mut` which is now also stable.
This commit is contained in:
commit
a32d3103d5
5 changed files with 9 additions and 13 deletions
|
|
@ -1128,7 +1128,6 @@ impl<T> [MaybeUninit<T>] {
|
|||
/// # Examples
|
||||
///
|
||||
/// ```
|
||||
/// #![feature(maybe_uninit_write_slice)]
|
||||
/// use std::mem::MaybeUninit;
|
||||
///
|
||||
/// let mut dst = [MaybeUninit::uninit(); 32];
|
||||
|
|
@ -1140,8 +1139,6 @@ impl<T> [MaybeUninit<T>] {
|
|||
/// ```
|
||||
///
|
||||
/// ```
|
||||
/// #![feature(maybe_uninit_write_slice)]
|
||||
///
|
||||
/// let mut vec = Vec::with_capacity(32);
|
||||
/// let src = [0; 16];
|
||||
///
|
||||
|
|
@ -1157,7 +1154,8 @@ impl<T> [MaybeUninit<T>] {
|
|||
/// ```
|
||||
///
|
||||
/// [`write_clone_of_slice`]: slice::write_clone_of_slice
|
||||
#[unstable(feature = "maybe_uninit_write_slice", issue = "79995")]
|
||||
#[stable(feature = "maybe_uninit_write_slice", since = "CURRENT_RUSTC_VERSION")]
|
||||
#[rustc_const_stable(feature = "maybe_uninit_write_slice", since = "CURRENT_RUSTC_VERSION")]
|
||||
pub const fn write_copy_of_slice(&mut self, src: &[T]) -> &mut [T]
|
||||
where
|
||||
T: Copy,
|
||||
|
|
@ -1188,7 +1186,6 @@ impl<T> [MaybeUninit<T>] {
|
|||
/// # Examples
|
||||
///
|
||||
/// ```
|
||||
/// #![feature(maybe_uninit_write_slice)]
|
||||
/// use std::mem::MaybeUninit;
|
||||
///
|
||||
/// let mut dst = [const { MaybeUninit::uninit() }; 5];
|
||||
|
|
@ -1203,8 +1200,6 @@ impl<T> [MaybeUninit<T>] {
|
|||
/// ```
|
||||
///
|
||||
/// ```
|
||||
/// #![feature(maybe_uninit_write_slice)]
|
||||
///
|
||||
/// let mut vec = Vec::with_capacity(32);
|
||||
/// let src = ["rust", "is", "a", "pretty", "cool", "language"].map(|s| s.to_string());
|
||||
///
|
||||
|
|
@ -1220,7 +1215,7 @@ impl<T> [MaybeUninit<T>] {
|
|||
/// ```
|
||||
///
|
||||
/// [`write_copy_of_slice`]: slice::write_copy_of_slice
|
||||
#[unstable(feature = "maybe_uninit_write_slice", issue = "79995")]
|
||||
#[stable(feature = "maybe_uninit_write_slice", since = "CURRENT_RUSTC_VERSION")]
|
||||
pub fn write_clone_of_slice(&mut self, src: &[T]) -> &mut [T]
|
||||
where
|
||||
T: Clone,
|
||||
|
|
@ -1415,7 +1410,7 @@ impl<T> [MaybeUninit<T>] {
|
|||
/// # Examples
|
||||
///
|
||||
/// ```
|
||||
/// #![feature(maybe_uninit_as_bytes, maybe_uninit_write_slice, maybe_uninit_slice)]
|
||||
/// #![feature(maybe_uninit_as_bytes, maybe_uninit_slice)]
|
||||
/// use std::mem::MaybeUninit;
|
||||
///
|
||||
/// let uninit = [MaybeUninit::new(0x1234u16), MaybeUninit::new(0x5678u16)];
|
||||
|
|
@ -1442,7 +1437,7 @@ impl<T> [MaybeUninit<T>] {
|
|||
/// # Examples
|
||||
///
|
||||
/// ```
|
||||
/// #![feature(maybe_uninit_as_bytes, maybe_uninit_write_slice, maybe_uninit_slice)]
|
||||
/// #![feature(maybe_uninit_as_bytes, maybe_uninit_slice)]
|
||||
/// use std::mem::MaybeUninit;
|
||||
///
|
||||
/// let mut uninit = [MaybeUninit::<u16>::uninit(), MaybeUninit::<u16>::uninit()];
|
||||
|
|
|
|||
|
|
@ -81,7 +81,6 @@
|
|||
#![feature(lazy_get)]
|
||||
#![feature(maybe_uninit_fill)]
|
||||
#![feature(maybe_uninit_uninit_array_transpose)]
|
||||
#![feature(maybe_uninit_write_slice)]
|
||||
#![feature(min_specialization)]
|
||||
#![feature(never_type)]
|
||||
#![feature(new_range_api)]
|
||||
|
|
|
|||
|
|
@ -14,3 +14,6 @@ rustc-literal-escaper = { version = "0.0.5", features = ["rustc-dep-of-std"] }
|
|||
[features]
|
||||
default = ["rustc-dep-of-std"]
|
||||
rustc-dep-of-std = []
|
||||
|
||||
[lints.rust]
|
||||
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(bootstrap)'] }
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@
|
|||
#![feature(staged_api)]
|
||||
#![feature(allow_internal_unstable)]
|
||||
#![feature(decl_macro)]
|
||||
#![feature(maybe_uninit_write_slice)]
|
||||
#![cfg_attr(bootstrap, feature(maybe_uninit_write_slice))]
|
||||
#![feature(negative_impls)]
|
||||
#![feature(panic_can_unwind)]
|
||||
#![feature(restricted_std)]
|
||||
|
|
|
|||
|
|
@ -349,7 +349,6 @@
|
|||
#![feature(lazy_get)]
|
||||
#![feature(maybe_uninit_array_assume_init)]
|
||||
#![feature(maybe_uninit_slice)]
|
||||
#![feature(maybe_uninit_write_slice)]
|
||||
#![feature(panic_can_unwind)]
|
||||
#![feature(panic_internals)]
|
||||
#![feature(pin_coerce_unsized_trait)]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue