diff options
Diffstat (limited to '')
-rw-r--r-- | src/test/ui/consts/ice-48279.rs | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/test/ui/consts/ice-48279.rs b/src/test/ui/consts/ice-48279.rs new file mode 100644 index 000000000..d1d90df24 --- /dev/null +++ b/src/test/ui/consts/ice-48279.rs @@ -0,0 +1,26 @@ +// run-pass +#![allow(dead_code)] +#![allow(unused_unsafe)] + +// https://github.com/rust-lang/rust/issues/48279 + +#[derive(PartialEq, Eq)] +pub struct NonZeroU32 { + value: u32 +} + +impl NonZeroU32 { + const unsafe fn new_unchecked(value: u32) -> Self { + NonZeroU32 { value } + } +} + +//pub const FOO_ATOM: NonZeroU32 = unsafe { NonZeroU32::new_unchecked(7) }; +pub const FOO_ATOM: NonZeroU32 = unsafe { NonZeroU32 { value: 7 } }; + +fn main() { + match None { + Some(FOO_ATOM) => {} + _ => {} + } +} |