// MIR for `main` after SimplifyCfg-initial fn main() -> () { let mut _0: (); // return place in scope 0 at $DIR/issue-38669.rs:4:11: 4:11 let mut _1: bool; // in scope 0 at $DIR/issue-38669.rs:5:9: 5:25 let mut _2: (); // in scope 0 at $DIR/issue-38669.rs:4:1: 12:2 let _3: (); // in scope 0 at $DIR/issue-38669.rs:7:9: 9:10 let mut _4: bool; // in scope 0 at $DIR/issue-38669.rs:7:12: 7:24 let mut _5: !; // in scope 0 at $DIR/issue-38669.rs:7:25: 9:10 scope 1 { debug should_break => _1; // in scope 1 at $DIR/issue-38669.rs:5:9: 5:25 } bb0: { StorageLive(_1); // scope 0 at $DIR/issue-38669.rs:5:9: 5:25 _1 = const false; // scope 0 at $DIR/issue-38669.rs:5:28: 5:33 FakeRead(ForLet(None), _1); // scope 0 at $DIR/issue-38669.rs:5:9: 5:25 goto -> bb1; // scope 1 at $DIR/issue-38669.rs:6:5: 11:6 } bb1: { falseUnwind -> [real: bb2, cleanup: bb5]; // scope 1 at $DIR/issue-38669.rs:6:5: 11:6 } bb2: { StorageLive(_3); // scope 1 at $DIR/issue-38669.rs:7:9: 9:10 StorageLive(_4); // scope 1 at $DIR/issue-38669.rs:7:12: 7:24 _4 = _1; // scope 1 at $DIR/issue-38669.rs:7:12: 7:24 switchInt(move _4) -> [false: bb4, otherwise: bb3]; // scope 1 at $DIR/issue-38669.rs:7:12: 7:24 } bb3: { _0 = const (); // scope 1 at $DIR/issue-38669.rs:8:13: 8:18 StorageDead(_4); // scope 1 at $DIR/issue-38669.rs:9:9: 9:10 StorageDead(_3); // scope 1 at $DIR/issue-38669.rs:9:9: 9:10 StorageDead(_1); // scope 0 at $DIR/issue-38669.rs:12:1: 12:2 return; // scope 0 at $DIR/issue-38669.rs:12:2: 12:2 } bb4: { _3 = const (); // scope 1 at $DIR/issue-38669.rs:9:10: 9:10 StorageDead(_4); // scope 1 at $DIR/issue-38669.rs:9:9: 9:10 StorageDead(_3); // scope 1 at $DIR/issue-38669.rs:9:9: 9:10 _1 = const true; // scope 1 at $DIR/issue-38669.rs:10:9: 10:28 _2 = const (); // scope 1 at $DIR/issue-38669.rs:6:10: 11:6 goto -> bb1; // scope 1 at $DIR/issue-38669.rs:6:5: 11:6 } bb5 (cleanup): { resume; // scope 0 at $DIR/issue-38669.rs:4:1: 12:2 } }