mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-23 23:34:48 +00:00
Rollup merge of #76527 - fusion-engineering-forks:cleanup-uninit, r=jonas-schievink
Remove internal and unstable MaybeUninit::UNINIT. Looks like it is no longer necessary, as `uninit_array()` can be used instead in the few cases where it was needed. (I wanted to just add `#[doc(hidden)]` to remove clutter from the documentation, but looks like it can just be removed entirely.)
This commit is contained in:
commit
e5389a4a34
@ -78,8 +78,8 @@ impl<K, V> LeafNode<K, V> {
|
||||
LeafNode {
|
||||
// As a general policy, we leave fields uninitialized if they can be, as this should
|
||||
// be both slightly faster and easier to track in Valgrind.
|
||||
keys: [MaybeUninit::UNINIT; CAPACITY],
|
||||
vals: [MaybeUninit::UNINIT; CAPACITY],
|
||||
keys: MaybeUninit::uninit_array(),
|
||||
vals: MaybeUninit::uninit_array(),
|
||||
parent: ptr::null(),
|
||||
parent_idx: MaybeUninit::uninit(),
|
||||
len: 0,
|
||||
@ -111,7 +111,7 @@ impl<K, V> InternalNode<K, V> {
|
||||
/// `len` of 0), there must be one initialized and valid edge. This function does not set up
|
||||
/// such an edge.
|
||||
unsafe fn new() -> Self {
|
||||
InternalNode { data: unsafe { LeafNode::new() }, edges: [MaybeUninit::UNINIT; 2 * B] }
|
||||
InternalNode { data: unsafe { LeafNode::new() }, edges: MaybeUninit::uninit_array() }
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -100,7 +100,6 @@
|
||||
#![feature(fn_traits)]
|
||||
#![feature(fundamental)]
|
||||
#![feature(inplace_iteration)]
|
||||
#![feature(internal_uninit_const)]
|
||||
#![feature(lang_items)]
|
||||
#![feature(layout_for_ptr)]
|
||||
#![feature(libc)]
|
||||
@ -135,7 +134,7 @@
|
||||
#![feature(unsized_locals)]
|
||||
#![feature(allocator_internals)]
|
||||
#![feature(slice_partition_dedup)]
|
||||
#![feature(maybe_uninit_extra, maybe_uninit_slice)]
|
||||
#![feature(maybe_uninit_extra, maybe_uninit_slice, maybe_uninit_uninit_array)]
|
||||
#![feature(alloc_layout_extra)]
|
||||
#![feature(trusted_random_access)]
|
||||
#![feature(try_trait)]
|
||||
|
@ -306,14 +306,6 @@ impl<T> MaybeUninit<T> {
|
||||
unsafe { MaybeUninit::<[MaybeUninit<T>; LEN]>::uninit().assume_init() }
|
||||
}
|
||||
|
||||
/// A promotable constant, equivalent to `uninit()`.
|
||||
#[unstable(
|
||||
feature = "internal_uninit_const",
|
||||
issue = "none",
|
||||
reason = "hack to work around promotability"
|
||||
)]
|
||||
pub const UNINIT: Self = Self::uninit();
|
||||
|
||||
/// Creates a new `MaybeUninit<T>` in an uninitialized state, with the memory being
|
||||
/// filled with `0` bytes. It depends on `T` whether that already makes for
|
||||
/// proper initialization. For example, `MaybeUninit<usize>::zeroed()` is initialized,
|
||||
|
Loading…
Reference in New Issue
Block a user