mirror of
https://github.com/rust-lang/rust
synced 2024-11-05 20:45:15 +00:00
19 lines
521 B
Rust
19 lines
521 B
Rust
//@ build-pass
|
|
// Test the uninit() construct returning various empty types.
|
|
|
|
//@ pretty-expanded FIXME #23616
|
|
|
|
use std::mem::MaybeUninit;
|
|
|
|
struct Foo;
|
|
|
|
#[allow(deprecated)]
|
|
pub fn main() {
|
|
unsafe {
|
|
// `Foo` and `[Foo; 2]` are both zero sized and inhabited, so this is safe.
|
|
let _x: Foo = MaybeUninit::uninit().assume_init();
|
|
let _x: [Foo; 2] = MaybeUninit::uninit().assume_init();
|
|
let _x: Foo = std::mem::uninitialized();
|
|
let _x: [Foo; 2] = std::mem::uninitialized();
|
|
}
|
|
}
|