]> git.lizzy.rs Git - rust.git/blob - tests/mir-opt/simplify_arm_identity.rs
Rollup merge of #107596 - Kobzol:stage-build-timer, r=Mark-Simulacrum
[rust.git] / tests / 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 }