]>
Commit | Line | Data |
---|---|---|
60c5eb7d XL |
1 | // Checks that `SimplifyArmIdentity` is not applied if enums have incompatible layouts. |
2 | // Regression test for issue #66856. | |
3 | // | |
4 | // compile-flags: -Zmir-opt-level=2 | |
f9f354fc | 5 | // EMIT_MIR_FOR_EACH_BIT_WIDTH |
60c5eb7d XL |
6 | |
7 | enum Src { | |
8 | Foo(u8), | |
9 | Bar, | |
10 | } | |
11 | ||
12 | enum Dst { | |
13 | Foo(u8), | |
14 | } | |
15 | ||
ba9703b0 | 16 | // EMIT_MIR rustc.main.SimplifyArmIdentity.diff |
60c5eb7d XL |
17 | fn main() { |
18 | let e: Src = Src::Foo(0); | |
19 | let _: Dst = match e { | |
20 | Src::Foo(x) => Dst::Foo(x), | |
21 | Src::Bar => Dst::Foo(0), | |
22 | }; | |
23 | } |