rust/tests/ui/const-generics/issues/issue-61422.rs

25 lines
560 B
Rust

//@ check-pass
use std::mem;
// Neither of the uninits below are currently accepted as not UB, however,
// this code does not run and is merely checking that we do not ICE on this pattern,
// so this is fine.
fn foo<const SIZE: usize>() {
let arr: [u8; SIZE] = unsafe {
#[allow(deprecated)]
let array: [u8; SIZE] = mem::uninitialized();
array
};
}
fn bar<const SIZE: usize>() {
let arr: [u8; SIZE] = unsafe {
let array: [u8; SIZE] = mem::MaybeUninit::uninit().assume_init();
array
};
}
fn main() {}