// MIR for `foo` 0 mir_map fn foo(_1: [(Never, u32); 1]) -> u32 { debug xs => _1; // in scope 0 at $DIR/issue-72181.rs:16:8: 16:10 let mut _0: u32; // return place in scope 0 at $DIR/issue-72181.rs:16:34: 16:37 let _2: usize; // in scope 0 at $DIR/issue-72181.rs:16:43: 16:44 let mut _3: usize; // in scope 0 at $DIR/issue-72181.rs:16:40: 16:45 let mut _4: bool; // in scope 0 at $DIR/issue-72181.rs:16:40: 16:45 bb0: { StorageLive(_2); // scope 0 at $DIR/issue-72181.rs:16:43: 16:44 _2 = const 0_usize; // scope 0 at $DIR/issue-72181.rs:16:43: 16:44 _3 = Len(_1); // scope 0 at $DIR/issue-72181.rs:16:40: 16:45 _4 = Lt(_2, _3); // scope 0 at $DIR/issue-72181.rs:16:40: 16: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:16:40: 16:45 } bb1: { _0 = (_1[_2].1: u32); // scope 0 at $DIR/issue-72181.rs:16:40: 16:47 StorageDead(_2); // scope 0 at $DIR/issue-72181.rs:16:48: 16:49 return; // scope 0 at $DIR/issue-72181.rs:16:49: 16:49 } bb2 (cleanup): { resume; // scope 0 at $DIR/issue-72181.rs:16:1: 16:49 } }