| - // MIR for `main` before ConstProp |
| + // MIR for `main` after ConstProp |
| |
| fn main() -> () { |
| let mut _0: (); // return place in scope 0 at $DIR/array_index.rs:4:11: 4:11 |
| let _1: u32; // in scope 0 at $DIR/array_index.rs:5:9: 5:10 |
| let mut _2: [u32; 4]; // in scope 0 at $DIR/array_index.rs:5:18: 5:30 |
| let _3: usize; // in scope 0 at $DIR/array_index.rs:5:31: 5:32 |
| let mut _4: usize; // in scope 0 at $DIR/array_index.rs:5:18: 5:33 |
| let mut _5: bool; // in scope 0 at $DIR/array_index.rs:5:18: 5:33 |
| scope 1 { |
| debug x => _1; // in scope 1 at $DIR/array_index.rs:5:9: 5:10 |
| } |
| |
| bb0: { |
| StorageLive(_1); // scope 0 at $DIR/array_index.rs:5:9: 5:10 |
| StorageLive(_2); // scope 0 at $DIR/array_index.rs:5:18: 5:30 |
| _2 = [const 0_u32, const 1_u32, const 2_u32, const 3_u32]; // scope 0 at $DIR/array_index.rs:5:18: 5:30 |
| StorageLive(_3); // scope 0 at $DIR/array_index.rs:5:31: 5:32 |
| _3 = const 2_usize; // scope 0 at $DIR/array_index.rs:5:31: 5:32 |
| _4 = const 4_usize; // scope 0 at $DIR/array_index.rs:5:18: 5:33 |
| - _5 = Lt(_3, _4); // scope 0 at $DIR/array_index.rs:5:18: 5:33 |
| - assert(move _5, "index out of bounds: the length is {} but the index is {}", move _4, _3) -> bb1; // scope 0 at $DIR/array_index.rs:5:18: 5:33 |
| + _5 = const true; // scope 0 at $DIR/array_index.rs:5:18: 5:33 |
| + assert(const true, "index out of bounds: the length is {} but the index is {}", const 4_usize, const 2_usize) -> bb1; // scope 0 at $DIR/array_index.rs:5:18: 5:33 |
| } |
| |
| bb1: { |
| - _1 = _2[_3]; // scope 0 at $DIR/array_index.rs:5:18: 5:33 |
| + _1 = const 2_u32; // scope 0 at $DIR/array_index.rs:5:18: 5:33 |
| StorageDead(_3); // scope 0 at $DIR/array_index.rs:5:33: 5:34 |
| StorageDead(_2); // scope 0 at $DIR/array_index.rs:5:33: 5:34 |
| nop; // scope 0 at $DIR/array_index.rs:4:11: 6:2 |
| StorageDead(_1); // scope 0 at $DIR/array_index.rs:6:1: 6:2 |
| return; // scope 0 at $DIR/array_index.rs:6:2: 6:2 |
| } |
| } |
| |