rust/tests/mir-opt/uninhabited_enum_branching.rs

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

31 lines
661 B
Rust
Raw Normal View History

enum Empty { }
// test matching an enum with uninhabited variants
enum Test1 {
A(Empty),
B(Empty),
C
}
// test an enum where the discriminants don't match the variant indexes
// (the optimization should do nothing here)
enum Test2 {
D = 4,
E = 5,
}
2020-07-27 19:22:43 +00:00
// EMIT_MIR uninhabited_enum_branching.main.UninhabitedEnumBranching.diff
// EMIT_MIR uninhabited_enum_branching.main.SimplifyCfg-after-uninhabited-enum-branching.after.mir
fn main() {
match Test1::C {
Test1::A(_) => "A(Empty)",
Test1::B(_) => "B(Empty)",
Test1::C => "C",
};
match Test2::D {
Test2::D => "D",
Test2::E => "E",
};
}