1 // MIR for `bar` after Inline
4 let mut _0: bool; // return place in scope 0 at $DIR/inline_retag.rs:+0:13: +0:17
5 let _1: for<'a, 'b> fn(&'a i32, &'b i32) -> bool {foo}; // in scope 0 at $DIR/inline_retag.rs:+1:9: +1:10
6 let mut _2: for<'a, 'b> fn(&'a i32, &'b i32) -> bool {foo}; // in scope 0 at $DIR/inline_retag.rs:+2:5: +2:6
7 let mut _3: &i32; // in scope 0 at $DIR/inline_retag.rs:+2:7: +2:9
8 let _4: &i32; // in scope 0 at $DIR/inline_retag.rs:+2:7: +2:9
9 let _5: i32; // in scope 0 at $DIR/inline_retag.rs:+2:8: +2:9
10 let mut _6: &i32; // in scope 0 at $DIR/inline_retag.rs:+2:11: +2:14
11 let _7: &i32; // in scope 0 at $DIR/inline_retag.rs:+2:11: +2:14
12 let _8: i32; // in scope 0 at $DIR/inline_retag.rs:+2:12: +2:14
14 debug f => _1; // in scope 1 at $DIR/inline_retag.rs:+1:9: +1:10
15 let mut _9: &i32; // in scope 1 at $DIR/inline_retag.rs:+2:11: +2:14
16 let mut _10: &i32; // in scope 1 at $DIR/inline_retag.rs:+2:7: +2:9
17 scope 2 (inlined foo) { // at $DIR/inline_retag.rs:12:5: 12:15
18 debug x => _3; // in scope 2 at $DIR/inline_retag.rs:16:8: 16:9
19 debug y => _6; // in scope 2 at $DIR/inline_retag.rs:16:17: 16:18
20 let mut _11: i32; // in scope 2 at $DIR/inline_retag.rs:17:5: 17:7
21 let mut _12: i32; // in scope 2 at $DIR/inline_retag.rs:17:11: 17:13
26 StorageLive(_1); // scope 0 at $DIR/inline_retag.rs:+1:9: +1:10
27 _1 = foo; // scope 0 at $DIR/inline_retag.rs:+1:13: +1:16
29 // + span: $DIR/inline_retag.rs:11:13: 11:16
30 // + literal: Const { ty: for<'a, 'b> fn(&'a i32, &'b i32) -> bool {foo}, val: Value(<ZST>) }
31 StorageLive(_2); // scope 1 at $DIR/inline_retag.rs:+2:5: +2:6
32 _2 = _1; // scope 1 at $DIR/inline_retag.rs:+2:5: +2:6
33 StorageLive(_3); // scope 1 at $DIR/inline_retag.rs:+2:7: +2:9
34 StorageLive(_4); // scope 1 at $DIR/inline_retag.rs:+2:7: +2:9
35 _10 = const _; // scope 1 at $DIR/inline_retag.rs:+2:7: +2:9
37 // + span: $DIR/inline_retag.rs:12:7: 12:9
38 // + literal: Const { ty: &i32, val: Unevaluated(bar, [], Some(promoted[1])) }
39 Retag(_10); // scope 1 at $DIR/inline_retag.rs:+2:7: +2:9
40 _4 = &(*_10); // scope 1 at $DIR/inline_retag.rs:+2:7: +2:9
41 _3 = &(*_4); // scope 1 at $DIR/inline_retag.rs:+2:7: +2:9
42 StorageLive(_6); // scope 1 at $DIR/inline_retag.rs:+2:11: +2:14
43 StorageLive(_7); // scope 1 at $DIR/inline_retag.rs:+2:11: +2:14
44 _9 = const _; // scope 1 at $DIR/inline_retag.rs:+2:11: +2:14
46 // + span: $DIR/inline_retag.rs:12:11: 12:14
47 // + literal: Const { ty: &i32, val: Unevaluated(bar, [], Some(promoted[0])) }
48 Retag(_9); // scope 1 at $DIR/inline_retag.rs:+2:11: +2:14
49 _7 = &(*_9); // scope 1 at $DIR/inline_retag.rs:+2:11: +2:14
50 _6 = &(*_7); // scope 1 at $DIR/inline_retag.rs:+2:11: +2:14
51 Retag(_3); // scope 2 at $DIR/inline_retag.rs:16:8: 16:9
52 Retag(_6); // scope 2 at $DIR/inline_retag.rs:16:17: 16:18
53 StorageLive(_11); // scope 2 at $DIR/inline_retag.rs:17:5: 17:7
54 _11 = (*_3); // scope 2 at $DIR/inline_retag.rs:17:5: 17:7
55 StorageLive(_12); // scope 2 at $DIR/inline_retag.rs:17:11: 17:13
56 _12 = (*_6); // scope 2 at $DIR/inline_retag.rs:17:11: 17:13
57 _0 = Eq(move _11, move _12); // scope 2 at $DIR/inline_retag.rs:17:5: 17:13
58 StorageDead(_12); // scope 2 at $DIR/inline_retag.rs:17:12: 17:13
59 StorageDead(_11); // scope 2 at $DIR/inline_retag.rs:17:12: 17:13
60 StorageDead(_6); // scope 1 at $DIR/inline_retag.rs:+2:14: +2:15
61 StorageDead(_3); // scope 1 at $DIR/inline_retag.rs:+2:14: +2:15
62 StorageDead(_2); // scope 1 at $DIR/inline_retag.rs:+2:14: +2:15
63 StorageDead(_1); // scope 0 at $DIR/inline_retag.rs:+3:1: +3:2
64 StorageDead(_7); // scope 0 at $DIR/inline_retag.rs:+3:1: +3:2
65 StorageDead(_4); // scope 0 at $DIR/inline_retag.rs:+3:1: +3:2
66 return; // scope 0 at $DIR/inline_retag.rs:+3:2: +3:2