]> git.lizzy.rs Git - rust.git/blob - src/test/ui/consts/const-eval/valid-const.rs
Rollup merge of #62257 - RalfJung:miri-c-str, r=estebank
[rust.git] / src / test / ui / consts / const-eval / valid-const.rs
1 // build-pass (FIXME(62277): could be check-pass?)
2
3 // Some constants that *are* valid
4 #![feature(const_transmute)]
5
6 use std::mem;
7 use std::ptr::NonNull;
8 use std::num::{NonZeroU8, NonZeroUsize};
9
10 const NON_NULL_PTR1: NonNull<u8> = unsafe { mem::transmute(1usize) };
11 const NON_NULL_PTR2: NonNull<u8> = unsafe { mem::transmute(&0) };
12
13 const NON_NULL_U8: NonZeroU8 = unsafe { mem::transmute(1u8) };
14 const NON_NULL_USIZE: NonZeroUsize = unsafe { mem::transmute(1usize) };
15
16 const UNIT: () = ();
17
18 fn main() {}