1 // MIR for `test2` after Inline
3 fn test2(_1: &dyn X) -> bool {
4 debug x => _1; // in scope 0 at $DIR/inline-trait-method_2.rs:4:10: 4:11
5 let mut _0: bool; // return place in scope 0 at $DIR/inline-trait-method_2.rs:4:24: 4:28
6 let mut _2: &dyn X; // in scope 0 at $DIR/inline-trait-method_2.rs:5:10: 5:11
7 let mut _3: &dyn X; // in scope 0 at $DIR/inline-trait-method_2.rs:5:10: 5:11
8 scope 1 (inlined test) { // at $DIR/inline-trait-method_2.rs:5:5: 5:12
9 debug x => _2; // in scope 1 at $DIR/inline-trait-method_2.rs:9:9: 9:10
10 let mut _4: &dyn X; // in scope 1 at $DIR/inline-trait-method_2.rs:10:5: 10:6
14 StorageLive(_2); // scope 0 at $DIR/inline-trait-method_2.rs:5:10: 5:11
15 StorageLive(_3); // scope 0 at $DIR/inline-trait-method_2.rs:5:10: 5:11
16 _3 = &(*_1); // scope 0 at $DIR/inline-trait-method_2.rs:5:10: 5:11
17 _2 = move _3 as &dyn X (Pointer(Unsize)); // scope 0 at $DIR/inline-trait-method_2.rs:5:10: 5:11
18 StorageDead(_3); // scope 0 at $DIR/inline-trait-method_2.rs:5:10: 5:11
19 StorageLive(_4); // scope 1 at $DIR/inline-trait-method_2.rs:10:5: 10:6
20 _4 = _2; // scope 1 at $DIR/inline-trait-method_2.rs:10:5: 10:6
21 _0 = <dyn X as X>::y(move _4) -> bb1; // scope 1 at $DIR/inline-trait-method_2.rs:10:5: 10:10
23 // + span: $DIR/inline-trait-method_2.rs:10:7: 10:8
24 // + literal: Const { ty: for<'r> fn(&'r dyn X) -> bool {<dyn X as X>::y}, val: Value(Scalar(<ZST>)) }
28 StorageDead(_4); // scope 1 at $DIR/inline-trait-method_2.rs:10:9: 10:10
29 StorageDead(_2); // scope 0 at $DIR/inline-trait-method_2.rs:5:11: 5:12
30 return; // scope 0 at $DIR/inline-trait-method_2.rs:6:2: 6:2