]> git.lizzy.rs Git - rust.git/blob - src/test/mir-opt/simplify_arm_identity.rs
Auto merge of #104765 - chenyukang:yukang-fix-104639-lifetime-check, r=oli-obk
[rust.git] / src / test / mir-opt / simplify_arm_identity.rs
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=3
5 // EMIT_MIR_FOR_EACH_BIT_WIDTH
6
7 // This pass is broken since deaggregation changed
8 // ignore-test
9
10 enum Src {
11     Foo(u8),
12     Bar,
13 }
14
15 enum Dst {
16     Foo(u8),
17 }
18
19 // EMIT_MIR simplify_arm_identity.main.SimplifyArmIdentity.diff
20 fn main() {
21     let e: Src = Src::Foo(0);
22     let _: Dst = match e {
23         Src::Foo(x) => Dst::Foo(x),
24         Src::Bar => Dst::Foo(0),
25     };
26 }