- // MIR for `change_loop_body` before ConstProp + // MIR for `change_loop_body` after ConstProp fn change_loop_body() -> () { let mut _0: (); // return place in scope 0 at $DIR/while_let_loops.rs:5:27: 5:27 let mut _1: i32; // in scope 0 at $DIR/while_let_loops.rs:6:9: 6:15 let mut _2: (); // in scope 0 at $DIR/while_let_loops.rs:5:1: 11:2 let mut _3: std::option::Option; // in scope 0 at $DIR/while_let_loops.rs:7:28: 7:32 let mut _4: isize; // in scope 0 at $DIR/while_let_loops.rs:7:15: 7:25 let mut _5: !; // in scope 0 at $DIR/while_let_loops.rs:7:33: 10:6 let mut _6: !; // in scope 0 at $DIR/while_let_loops.rs:7:5: 10:6 let _7: (); // in scope 0 at $DIR/while_let_loops.rs:7:5: 10:6 let mut _8: !; // in scope 0 at $DIR/while_let_loops.rs:7:5: 10:6 scope 1 { debug _x => _1; // in scope 1 at $DIR/while_let_loops.rs:6:9: 6:15 scope 2 { } } bb0: { StorageLive(_1); // scope 0 at $DIR/while_let_loops.rs:6:9: 6:15 _1 = const 0_i32; // scope 0 at $DIR/while_let_loops.rs:6:18: 6:19 StorageLive(_3); // scope 2 at $DIR/while_let_loops.rs:7:28: 7:32 Deinit(_3); // scope 2 at $DIR/while_let_loops.rs:7:28: 7:32 discriminant(_3) = 0; // scope 2 at $DIR/while_let_loops.rs:7:28: 7:32 - _4 = discriminant(_3); // scope 2 at $DIR/while_let_loops.rs:7:15: 7:25 - switchInt(move _4) -> [1_isize: bb1, otherwise: bb3]; // scope 2 at $DIR/while_let_loops.rs:7:15: 7:25 + _4 = const 0_isize; // scope 2 at $DIR/while_let_loops.rs:7:15: 7:25 + switchInt(const 0_isize) -> [1_isize: bb1, otherwise: bb3]; // scope 2 at $DIR/while_let_loops.rs:7:15: 7:25 } bb1: { switchInt(((_3 as Some).0: u32)) -> [0_u32: bb2, otherwise: bb3]; // scope 2 at $DIR/while_let_loops.rs:7:15: 7:25 } bb2: { _1 = const 1_i32; // scope 2 at $DIR/while_let_loops.rs:8:9: 8:15 nop; // scope 2 at $DIR/while_let_loops.rs:9:9: 9:14 goto -> bb4; // scope 2 at $DIR/while_let_loops.rs:9:9: 9:14 } bb3: { StorageLive(_7); // scope 1 at $DIR/while_let_loops.rs:7:5: 10:6 nop; // scope 1 at $DIR/while_let_loops.rs:7:5: 10:6 StorageDead(_7); // scope 1 at $DIR/while_let_loops.rs:10:5: 10:6 goto -> bb4; // scope 1 at no-location } bb4: { StorageDead(_3); // scope 1 at $DIR/while_let_loops.rs:10:5: 10:6 StorageDead(_1); // scope 0 at $DIR/while_let_loops.rs:11:1: 11:2 return; // scope 0 at $DIR/while_let_loops.rs:11:2: 11:2 } }