about summary refs log tree commit diff
path: root/compiler/rustc_parse/src/parser/expr.rs
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2023-11-05 05:56:21 +0000
committerbors <bors@rust-lang.org>2023-11-05 05:56:21 +0000
commitda1e0d1d75bc029adfa30c596b526bc17436453e (patch)
tree024381f8c820e2f9cb8f0d9211bbe1f4561b5796 /compiler/rustc_parse/src/parser/expr.rs
parentf64d028196e06ca523ac5de442dc4772cfa58b47 (diff)
parent5e5f3341e3749f18a6d6fbb2228a9d3b42c0b280 (diff)
downloadrust-da1e0d1d75bc029adfa30c596b526bc17436453e.tar.gz
rust-da1e0d1d75bc029adfa30c596b526bc17436453e.zip
Auto merge of #116218 - tgross35:const-maybe-uninit-zeroed, r=dtolnay
Stabilize `const_maybe_uninit_zeroed` and `const_mem_zeroed`

Make `MaybeUninit::zeroed` and `mem::zeroed` const stable. Newly stable API:

```rust
// core::mem
pub const unsafe fn zeroed<T>() ->;

impl<T> MaybeUninit<T> {
    pub const fn zeroed() -> MaybeUninit<T>;
}
```

This relies on features based around `const_mut_refs`. Per `@RalfJung,` this should be OK since we do not leak any `&mut` to the user.

For this to be possible, intrinsics `assert_zero_valid` and `assert_mem_uninitialized_valid` were made const stable.

Tracking issue: #91850
Zulip discussion: https://rust-lang.zulipchat.com/#narrow/stream/146212-t-compiler.2Fconst-eval/topic/.60const_mut_refs.60.20dependents

r? libs-api
`@rustbot` label -T-libs +T-libs-api +A-const-eval
cc `@RalfJung`  `@oli-obk` `@rust-lang/wg-const-eval`
Diffstat (limited to 'compiler/rustc_parse/src/parser/expr.rs')
0 files changed, 0 insertions, 0 deletions