|
4 | 4 | fn main() -> () { |
5 | 5 | let mut _0: (); |
6 | 6 | let _1: std::ops::CoroutineState<i32, bool>; |
7 | | - let mut _2: std::pin::Pin<&mut {coroutine@$DIR/inline_coroutine.rs:17:5: 17:8}>; |
8 | | - let mut _3: &mut {coroutine@$DIR/inline_coroutine.rs:17:5: 17:8}; |
9 | | - let mut _4: {coroutine@$DIR/inline_coroutine.rs:17:5: 17:8}; |
| 7 | + let mut _2: std::pin::Pin<&mut {coroutine@$DIR/inline_coroutine.rs:19:5: 19:8}>; |
| 8 | + let mut _3: &mut {coroutine@$DIR/inline_coroutine.rs:19:5: 19:8}; |
| 9 | + let mut _4: {coroutine@$DIR/inline_coroutine.rs:19:5: 19:8}; |
10 | 10 | + let mut _5: bool; |
11 | 11 | scope 1 { |
12 | 12 | debug _r => _1; |
13 | 13 | } |
14 | 14 | + scope 2 (inlined g) { |
15 | 15 | + } |
16 | | -+ scope 3 (inlined Pin::<&mut {coroutine@$DIR/inline_coroutine.rs:17:5: 17:8}>::new) { |
| 16 | ++ scope 3 (inlined Pin::<&mut {coroutine@$DIR/inline_coroutine.rs:19:5: 19:8}>::new) { |
17 | 17 | + debug pointer => _3; |
18 | 18 | + scope 4 { |
19 | | -+ scope 5 (inlined Pin::<&mut {coroutine@$DIR/inline_coroutine.rs:17:5: 17:8}>::new_unchecked) { |
| 19 | ++ scope 5 (inlined Pin::<&mut {coroutine@$DIR/inline_coroutine.rs:19:5: 19:8}>::new_unchecked) { |
20 | 20 | + debug pointer => _3; |
21 | 21 | + } |
22 | 22 | + } |
23 | 23 | + } |
24 | 24 | + scope 6 (inlined g::{closure#0}) { |
25 | 25 | + debug a => _5; |
26 | | -+ let mut _6: &mut {coroutine@$DIR/inline_coroutine.rs:17:5: 17:8}; |
| 26 | ++ let mut _6: &mut {coroutine@$DIR/inline_coroutine.rs:19:5: 19:8}; |
27 | 27 | + let mut _7: u32; |
28 | 28 | + let mut _8: i32; |
29 | 29 | + } |
|
34 | 34 | StorageLive(_3); |
35 | 35 | StorageLive(_4); |
36 | 36 | - _4 = g() -> [return: bb1, unwind unreachable]; |
37 | | -+ _4 = {coroutine@$DIR/inline_coroutine.rs:17:5: 17:8 (#0)}; |
| 37 | ++ _4 = {coroutine@$DIR/inline_coroutine.rs:19:5: 19:8 (#0)}; |
38 | 38 | + _3 = &mut _4; |
39 | | -+ _2 = Pin::<&mut {coroutine@$DIR/inline_coroutine.rs:17:5: 17:8}> { pointer: move _3 }; |
| 39 | ++ _2 = Pin::<&mut {coroutine@$DIR/inline_coroutine.rs:19:5: 19:8}> { pointer: move _3 }; |
40 | 40 | + StorageDead(_3); |
41 | 41 | + StorageLive(_5); |
42 | 42 | + _5 = const false; |
43 | 43 | + StorageLive(_6); |
44 | 44 | + StorageLive(_7); |
45 | | -+ _6 = (_2.0: &mut {coroutine@$DIR/inline_coroutine.rs:17:5: 17:8}); |
| 45 | ++ _6 = (_2.0: &mut {coroutine@$DIR/inline_coroutine.rs:19:5: 19:8}); |
46 | 46 | + _7 = discriminant((*_6)); |
47 | 47 | + switchInt(move _7) -> [0: bb3, 1: bb7, 3: bb8, otherwise: bb9]; |
48 | 48 | } |
49 | 49 |
|
50 | 50 | bb1: { |
51 | 51 | - _3 = &mut _4; |
52 | | -- _2 = Pin::<&mut {coroutine@$DIR/inline_coroutine.rs:17:5: 17:8}>::new(move _3) -> [return: bb2, unwind unreachable]; |
| 52 | +- _2 = Pin::<&mut {coroutine@$DIR/inline_coroutine.rs:19:5: 19:8}>::new(move _3) -> [return: bb2, unwind unreachable]; |
53 | 53 | + StorageDead(_7); |
54 | 54 | + StorageDead(_6); |
55 | 55 | + StorageDead(_5); |
|
59 | 59 |
|
60 | 60 | bb2: { |
61 | 61 | - StorageDead(_3); |
62 | | -- _1 = <{coroutine@$DIR/inline_coroutine.rs:17:5: 17:8} as Coroutine<bool>>::resume(move _2, const false) -> [return: bb3, unwind unreachable]; |
| 62 | +- _1 = <{coroutine@$DIR/inline_coroutine.rs:19:5: 19:8} as Coroutine<bool>>::resume(move _2, const false) -> [return: bb3, unwind unreachable]; |
63 | 63 | + StorageDead(_4); |
64 | 64 | + _0 = const (); |
65 | 65 | + StorageDead(_1); |
|
0 commit comments