1 // MIR for `borrow_and_cast` after SimplifyCfg-initial
3 fn borrow_and_cast(_1: i32) -> () {
4 debug x => _1; // in scope 0 at $DIR/address_of.rs:+0:20: +0:25
5 let mut _0: (); // return place in scope 0 at $DIR/address_of.rs:+0:32: +0:32
6 let _2: *const i32; // in scope 0 at $DIR/address_of.rs:+1:9: +1:10
7 let _3: &i32; // in scope 0 at $DIR/address_of.rs:+1:13: +1:15
8 let _5: &mut i32; // in scope 0 at $DIR/address_of.rs:+2:13: +2:19
9 let mut _7: &mut i32; // in scope 0 at $DIR/address_of.rs:+3:13: +3:19
11 debug p => _2; // in scope 1 at $DIR/address_of.rs:+1:9: +1:10
12 let _4: *const i32; // in scope 1 at $DIR/address_of.rs:+2:9: +2:10
14 debug q => _4; // in scope 2 at $DIR/address_of.rs:+2:9: +2:10
15 let _6: *mut i32; // in scope 2 at $DIR/address_of.rs:+3:9: +3:10
17 debug r => _6; // in scope 3 at $DIR/address_of.rs:+3:9: +3:10
23 StorageLive(_2); // scope 0 at $DIR/address_of.rs:+1:9: +1:10
24 StorageLive(_3); // scope 0 at $DIR/address_of.rs:+1:13: +1:15
25 _3 = &_1; // scope 0 at $DIR/address_of.rs:+1:13: +1:15
26 _2 = &raw const (*_3); // scope 0 at $DIR/address_of.rs:+1:13: +1:15
27 FakeRead(ForLet(None), _2); // scope 0 at $DIR/address_of.rs:+1:9: +1:10
28 StorageDead(_3); // scope 0 at $DIR/address_of.rs:+1:29: +1:30
29 StorageLive(_4); // scope 1 at $DIR/address_of.rs:+2:9: +2:10
30 StorageLive(_5); // scope 1 at $DIR/address_of.rs:+2:13: +2:19
31 _5 = &mut _1; // scope 1 at $DIR/address_of.rs:+2:13: +2:19
32 _4 = &raw const (*_5); // scope 1 at $DIR/address_of.rs:+2:13: +2:19
33 FakeRead(ForLet(None), _4); // scope 1 at $DIR/address_of.rs:+2:9: +2:10
34 StorageDead(_5); // scope 1 at $DIR/address_of.rs:+2:33: +2:34
35 StorageLive(_6); // scope 2 at $DIR/address_of.rs:+3:9: +3:10
36 StorageLive(_7); // scope 2 at $DIR/address_of.rs:+3:13: +3:19
37 _7 = &mut _1; // scope 2 at $DIR/address_of.rs:+3:13: +3:19
38 _6 = &raw mut (*_7); // scope 2 at $DIR/address_of.rs:+3:13: +3:19
39 FakeRead(ForLet(None), _6); // scope 2 at $DIR/address_of.rs:+3:9: +3:10
40 StorageDead(_7); // scope 2 at $DIR/address_of.rs:+3:31: +3:32
41 _0 = const (); // scope 0 at $DIR/address_of.rs:+0:32: +4:2
42 StorageDead(_6); // scope 2 at $DIR/address_of.rs:+4:1: +4:2
43 StorageDead(_4); // scope 1 at $DIR/address_of.rs:+4:1: +4:2
44 StorageDead(_2); // scope 0 at $DIR/address_of.rs:+4:1: +4:2
45 return; // scope 0 at $DIR/address_of.rs:+4:2: +4:2