- // MIR for `unreachable_ref` before ConstProp + // MIR for `unreachable_ref` after ConstProp fn unreachable_ref() -> ! { 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: &Never; // in scope 0 at $DIR/transmute.rs:+1:9: +1:10 let mut _3: !; // 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 - _2 = const 1_usize as &Never (Transmute); // scope 2 at $DIR/transmute.rs:+1:30: +1:48 + _2 = const {0x1 as &Never}; // scope 2 at $DIR/transmute.rs:+1:30: +1:48 + // mir::Constant + // + span: no-location + // + literal: Const { ty: &Never, val: Value(Scalar(0x00000001)) } StorageLive(_3); // scope 1 at $DIR/transmute.rs:+2:5: +2:16 unreachable; // scope 1 at $DIR/transmute.rs:+2:11: +2:13 } }