| //@ dont-require-annotations: NOTE | |
| #![feature(never_type)] | |
| enum Helper<T, U> { | |
| T(T, [!; 0]), | |
| #[allow(dead_code)] | |
| U(U), | |
| } | |
| fn transmute<T, U>(t: T) -> U { | |
| let Helper::U(u) = Helper::T(t, []); | |
| //~^ ERROR refutable pattern in local binding | |
| //~| NOTE `Helper::T(_, _)` not covered | |
| u | |
| } | |
| fn main() { | |
| println!("{:?}", transmute::<&str, (*const u8, u64)>("type safety")); | |
| } |