diff options
Diffstat (limited to 'src/test/ui/consts/issue-87046.rs')
-rw-r--r-- | src/test/ui/consts/issue-87046.rs | 33 |
1 files changed, 0 insertions, 33 deletions
diff --git a/src/test/ui/consts/issue-87046.rs b/src/test/ui/consts/issue-87046.rs deleted file mode 100644 index 4b8f9f536..000000000 --- a/src/test/ui/consts/issue-87046.rs +++ /dev/null @@ -1,33 +0,0 @@ -// Regression test for the ICE described in #87046. - -#![crate_type="lib"] -#![allow(unreachable_patterns)] - -#[derive(PartialEq, Eq)] -#[repr(transparent)] -pub struct Username(str); - -pub const ROOT_USER: &Username = Username::from_str("root"); - -impl Username { - pub const fn from_str(raw: &str) -> &Self { - union Transmute<'a> { - raw: &'a str, - typed: &'a Username, - } - - unsafe { Transmute { raw }.typed } - } - - pub const fn as_str(&self) -> &str { - &self.0 - } - - pub fn is_root(&self) -> bool { - match self { - ROOT_USER => true, - //~^ ERROR: cannot use unsized non-slice type `Username` in constant patterns - _ => false, - } - } -} |