1 // MIR for `main` after SimplifyCfg-after-uninhabited-enum-branching
4 let mut _0: (); // return place in scope 0 at $DIR/uninhabited_enum_branching.rs:19:11: 19:11
5 let _1: &str; // in scope 0 at $DIR/uninhabited_enum_branching.rs:20:5: 24:6
6 let mut _2: Test1; // in scope 0 at $DIR/uninhabited_enum_branching.rs:20:11: 20:19
7 let mut _3: isize; // in scope 0 at $DIR/uninhabited_enum_branching.rs:21:9: 21:20
8 let _4: &str; // in scope 0 at $DIR/uninhabited_enum_branching.rs:22:24: 22:34
9 let _5: &str; // in scope 0 at $DIR/uninhabited_enum_branching.rs:23:21: 23:24
10 let _6: &str; // in scope 0 at $DIR/uninhabited_enum_branching.rs:26:5: 29:6
11 let mut _7: Test2; // in scope 0 at $DIR/uninhabited_enum_branching.rs:26:11: 26:19
12 let mut _8: isize; // in scope 0 at $DIR/uninhabited_enum_branching.rs:27:9: 27:17
13 let _9: &str; // in scope 0 at $DIR/uninhabited_enum_branching.rs:28:21: 28:24
16 StorageLive(_1); // scope 0 at $DIR/uninhabited_enum_branching.rs:20:5: 24:6
17 StorageLive(_2); // scope 0 at $DIR/uninhabited_enum_branching.rs:20:11: 20:19
18 Deinit(_2); // scope 0 at $DIR/uninhabited_enum_branching.rs:20:11: 20:19
19 discriminant(_2) = 2; // scope 0 at $DIR/uninhabited_enum_branching.rs:20:11: 20:19
20 _3 = discriminant(_2); // scope 0 at $DIR/uninhabited_enum_branching.rs:20:11: 20:19
21 StorageLive(_5); // scope 0 at $DIR/uninhabited_enum_branching.rs:23:21: 23:24
22 _5 = const "C"; // scope 0 at $DIR/uninhabited_enum_branching.rs:23:21: 23:24
24 // + span: $DIR/uninhabited_enum_branching.rs:23:21: 23:24
25 // + literal: Const { ty: &str, val: Value(Slice(..)) }
26 _1 = &(*_5); // scope 0 at $DIR/uninhabited_enum_branching.rs:23:21: 23:24
27 StorageDead(_5); // scope 0 at $DIR/uninhabited_enum_branching.rs:23:23: 23:24
28 StorageDead(_2); // scope 0 at $DIR/uninhabited_enum_branching.rs:24:6: 24:7
29 StorageDead(_1); // scope 0 at $DIR/uninhabited_enum_branching.rs:24:6: 24:7
30 StorageLive(_6); // scope 0 at $DIR/uninhabited_enum_branching.rs:26:5: 29:6
31 StorageLive(_7); // scope 0 at $DIR/uninhabited_enum_branching.rs:26:11: 26:19
32 Deinit(_7); // scope 0 at $DIR/uninhabited_enum_branching.rs:26:11: 26:19
33 discriminant(_7) = 0; // scope 0 at $DIR/uninhabited_enum_branching.rs:26:11: 26:19
34 _8 = discriminant(_7); // scope 0 at $DIR/uninhabited_enum_branching.rs:26:11: 26:19
35 switchInt(move _8) -> [4_isize: bb2, otherwise: bb1]; // scope 0 at $DIR/uninhabited_enum_branching.rs:26:5: 26:19
39 StorageLive(_9); // scope 0 at $DIR/uninhabited_enum_branching.rs:28:21: 28:24
40 _9 = const "E"; // scope 0 at $DIR/uninhabited_enum_branching.rs:28:21: 28:24
42 // + span: $DIR/uninhabited_enum_branching.rs:28:21: 28:24
43 // + literal: Const { ty: &str, val: Value(Slice(..)) }
44 _6 = &(*_9); // scope 0 at $DIR/uninhabited_enum_branching.rs:28:21: 28:24
45 StorageDead(_9); // scope 0 at $DIR/uninhabited_enum_branching.rs:28:23: 28:24
46 goto -> bb3; // scope 0 at $DIR/uninhabited_enum_branching.rs:28:23: 28:24
50 _6 = const "D"; // scope 0 at $DIR/uninhabited_enum_branching.rs:27:21: 27:24
52 // + span: $DIR/uninhabited_enum_branching.rs:27:21: 27:24
53 // + literal: Const { ty: &str, val: Value(Slice(..)) }
54 goto -> bb3; // scope 0 at $DIR/uninhabited_enum_branching.rs:27:21: 27:24
58 StorageDead(_7); // scope 0 at $DIR/uninhabited_enum_branching.rs:29:6: 29:7
59 StorageDead(_6); // scope 0 at $DIR/uninhabited_enum_branching.rs:29:6: 29:7
60 _0 = const (); // scope 0 at $DIR/uninhabited_enum_branching.rs:19:11: 30:2
61 return; // scope 0 at $DIR/uninhabited_enum_branching.rs:30:2: 30:2