32 lines
1.8 KiB
Diff
32 lines
1.8 KiB
Diff
- // MIR for `unreachable_mut` before ConstProp
|
|
+ // MIR for `unreachable_mut` after ConstProp
|
|
|
|
fn unreachable_mut() -> ! {
|
|
let mut _0: !; // return place in scope 0 at $DIR/transmute.rs:+0:36: +0:37
|
|
let mut _1: !; // in scope 0 at $DIR/transmute.rs:+0:38: +3:2
|
|
let _2: &mut Never; // in scope 0 at $DIR/transmute.rs:+1:9: +1:10
|
|
let mut _3: &mut Never; // in scope 0 at $DIR/transmute.rs:+1:34: +1:52
|
|
let mut _4: !; // in scope 0 at $DIR/transmute.rs:+2:5: +2:16
|
|
scope 1 {
|
|
debug x => _2; // in scope 1 at $DIR/transmute.rs:+1:9: +1:10
|
|
}
|
|
scope 2 {
|
|
}
|
|
|
|
bb0: {
|
|
StorageLive(_1); // scope 0 at $DIR/transmute.rs:+0:38: +3:2
|
|
StorageLive(_2); // scope 0 at $DIR/transmute.rs:+1:9: +1:10
|
|
StorageLive(_3); // scope 0 at $DIR/transmute.rs:+1:34: +1:52
|
|
- _3 = const 1_usize as &mut Never (Transmute); // scope 2 at $DIR/transmute.rs:+1:34: +1:52
|
|
+ _3 = const {0x1 as &mut Never}; // scope 2 at $DIR/transmute.rs:+1:34: +1:52
|
|
+ // mir::Constant
|
|
+ // + span: no-location
|
|
+ // + literal: Const { ty: &mut Never, val: Value(Scalar(0x00000001)) }
|
|
_2 = &mut (*_3); // scope 0 at $DIR/transmute.rs:+1:34: +1:52
|
|
StorageDead(_3); // scope 0 at $DIR/transmute.rs:+1:54: +1:55
|
|
StorageLive(_4); // scope 1 at $DIR/transmute.rs:+2:5: +2:16
|
|
unreachable; // scope 1 at $DIR/transmute.rs:+2:11: +2:13
|
|
}
|
|
}
|
|
|