- // MIR for `main` before SimplifyCfg-initial + // MIR for `main` after SimplifyCfg-initial fn main() -> () { let mut _0: (); let mut _1: (); let mut _2: bool; let mut _3: !; bb0: { goto -> bb1; } bb1: { - falseUnwind -> [real: bb2, unwind: bb11]; + falseUnwind -> [real: bb2, unwind: bb6]; } bb2: { StorageLive(_2); - _2 = bar() -> [return: bb3, unwind: bb11]; + _2 = bar() -> [return: bb3, unwind: bb6]; } bb3: { switchInt(move _2) -> [0: bb5, otherwise: bb4]; } bb4: { _0 = const (); - goto -> bb10; + StorageDead(_2); + return; } bb5: { - goto -> bb8; - } - - bb6: { - unreachable; - } - - bb7: { - goto -> bb9; - } - - bb8: { _1 = const (); - goto -> bb9; - } - - bb9: { StorageDead(_2); goto -> bb1; } - bb10: { - StorageDead(_2); - return; - } - - bb11 (cleanup): { + bb6 (cleanup): { resume; } }