| #![allow(unused_variables)] |
| #![deny(dead_code)] |
| |
| enum Enum1 { |
| Variant1(#[allow(dead_code)] isize), |
| Variant2 //~ ERROR: variant `Variant2` is never constructed |
| } |
| |
| enum Enum2 { |
| Variant3(#[allow(dead_code)] bool), |
| #[allow(dead_code)] |
| Variant4(isize), |
| Variant5 { _x: isize }, //~ ERROR: variants `Variant5` and `Variant6` are never constructed |
| Variant6(isize), |
| _Variant7, |
| Variant8 { _field: bool }, |
| Variant9, |
| Variant10(#[allow(dead_code)] usize) |
| } |
| |
| impl Enum2 { |
| fn new_variant8() -> Enum2 { |
| Self::Variant8 { _field: true } |
| } |
| |
| fn new_variant9() -> Enum2 { |
| Self::Variant9 |
| } |
| |
| fn new_variant10() -> Enum2 { |
| Self::Variant10(10) |
| } |
| } |
| |
| enum Enum3 { //~ ERROR: enum `Enum3` is never used |
| Variant8, |
| Variant9 |
| } |
| |
| fn main() { |
| let v = Enum1::Variant1(1); |
| match v { |
| Enum1::Variant1(_) => (), |
| Enum1::Variant2 => () |
| } |
| let x = Enum2::Variant3(true); |
| let _ = Enum2::new_variant8(); |
| let _ = Enum2::new_variant9(); |
| let _ = Enum2::new_variant10(); |
| } |