// MIR for `foo` 0 mir_map fn foo(_1: [(Never, u32); 1]) -> u32 { debug xs => _1; // in scope 0 at $DIR/issue-72181.rs:+0:8: +0:10 let mut _0: u32; // return place in scope 0 at $DIR/issue-72181.rs:+0:34: +0:37 let _2: usize; // in scope 0 at $DIR/issue-72181.rs:+0:43: +0:44 let mut _3: usize; // in scope 0 at $DIR/issue-72181.rs:+0:40: +0:45 let mut _4: bool; // in scope 0 at $DIR/issue-72181.rs:+0:40: +0:45 bb0: { StorageLive(_2); // scope 0 at $DIR/issue-72181.rs:+0:43: +0:44 _2 = const 0_usize; // scope 0 at $DIR/issue-72181.rs:+0:43: +0:44 _3 = Len(_1); // scope 0 at $DIR/issue-72181.rs:+0:40: +0:45 _4 = Lt(_2, _3); // scope 0 at $DIR/issue-72181.rs:+0:40: +0:45 assert(move _4, "index out of bounds: the length is {} but the index is {}", move _3, _2) -> [success: bb1, unwind: bb2]; // scope 0 at $DIR/issue-72181.rs:+0:40: +0:45 } bb1: { _0 = (_1[_2].1: u32); // scope 0 at $DIR/issue-72181.rs:+0:40: +0:47 StorageDead(_2); // scope 0 at $DIR/issue-72181.rs:+0:48: +0:49 return; // scope 0 at $DIR/issue-72181.rs:+0:49: +0:49 } bb2 (cleanup): { resume; // scope 0 at $DIR/issue-72181.rs:+0:1: +0:49 } }