| // MIR for `foo` after built | |
| fn foo(_1: [(Never, u32); 1]) -> u32 { | |
| debug xs => _1; | |
| let mut _0: u32; | |
| let _2: usize; | |
| let mut _3: bool; | |
| bb0: { | |
| StorageLive(_2); | |
| _2 = const 0_usize; | |
| FakeRead(ForIndex, _1); | |
| _3 = Lt(copy _2, const 1_usize); | |
| assert(move _3, "index out of bounds: the length is {} but the index is {}", const 1_usize, copy _2) -> [success: bb1, unwind: bb2]; | |
| } | |
| bb1: { | |
| _0 = copy (_1[_2].1: u32); | |
| StorageDead(_2); | |
| return; | |
| } | |
| bb2 (cleanup): { | |
| resume; | |
| } | |
| } |