41 lines
2.0 KiB
Rust
41 lines
2.0 KiB
Rust
// MIR for `bar` after built
|
|
|
|
fn bar(_1: Box<[T]>) -> () {
|
|
debug it => _1; // in scope 0 at $DIR/issue_91633.rs:+0:12: +0:14
|
|
let mut _0: (); // return place in scope 0 at $DIR/issue_91633.rs:+1:2: +1:2
|
|
let mut _2: &<[T] as std::ops::Index<usize>>::Output; // in scope 0 at $DIR/issue_91633.rs:+4:14: +4:19
|
|
let mut _3: &[T]; // in scope 0 at $DIR/issue_91633.rs:+4:14: +4:16
|
|
scope 1 {
|
|
}
|
|
|
|
bb0: {
|
|
StorageLive(_2); // scope 0 at $DIR/issue_91633.rs:+4:14: +4:19
|
|
StorageLive(_3); // scope 0 at $DIR/issue_91633.rs:+4:14: +4:16
|
|
_3 = &(*_1); // scope 0 at $DIR/issue_91633.rs:+4:14: +4:16
|
|
_2 = <[T] as Index<usize>>::index(move _3, const 0_usize) -> [return: bb1, unwind: bb3]; // scope 0 at $DIR/issue_91633.rs:+4:14: +4:19
|
|
// mir::Constant
|
|
// + span: $DIR/issue_91633.rs:15:14: 15:19
|
|
// + literal: Const { ty: for<'a> fn(&'a [T], usize) -> &'a <[T] as Index<usize>>::Output {<[T] as Index<usize>>::index}, val: Value(<ZST>) }
|
|
}
|
|
|
|
bb1: {
|
|
StorageDead(_3); // scope 0 at $DIR/issue_91633.rs:+4:18: +4:19
|
|
PlaceMention((*_2)); // scope 0 at $DIR/issue_91633.rs:+4:14: +4:19
|
|
StorageDead(_2); // scope 0 at $DIR/issue_91633.rs:+4:19: +4:20
|
|
_0 = const (); // scope 0 at $DIR/issue_91633.rs:+3:2: +5:3
|
|
drop(_1) -> [return: bb2, unwind: bb4]; // scope 0 at $DIR/issue_91633.rs:+5:2: +5:3
|
|
}
|
|
|
|
bb2: {
|
|
return; // scope 0 at $DIR/issue_91633.rs:+5:3: +5:3
|
|
}
|
|
|
|
bb3 (cleanup): {
|
|
drop(_1) -> [return: bb4, unwind terminate]; // scope 0 at $DIR/issue_91633.rs:+5:2: +5:3
|
|
}
|
|
|
|
bb4 (cleanup): {
|
|
resume; // scope 0 at $DIR/issue_91633.rs:+0:1: +5:3
|
|
}
|
|
}
|