@@ -45,7 +45,7 @@ fn main::{closure#0}(_1: Pin<&mut {coroutine@$DIR/coroutine.rs:18:5: 18:18}>, _2
4545 bb0 : {
4646 _18 = copy (_1.0 : &mut {coroutine@$DIR/coroutine.rs:18:5: 18:18});
4747 _17 = discriminant((*_18));
48- switchInt(move _17) -> [0 : bb1, 1: bb15 , 3: bb13 , 4: bb14 , otherwise: bb16 ];
48+ switchInt(move _17) -> [0 : bb1, 1: bb11 , 3: bb9 , 4: bb10 , otherwise: bb12 ];
4949 }
5050
5151 bb1 : {
@@ -76,11 +76,6 @@ fn main::{closure#0}(_1: Pin<&mut {coroutine@$DIR/coroutine.rs:18:5: 18:18}>, _2
7676 }
7777
7878 bb4 : {
79- StorageDead(_4);
80- drop(_3) -> [return : bb5, unwind unreachable];
81- }
82-
83- bb5 : {
8479 StorageDead(_3);
8580 StorageLive(_8);
8681 StorageLive(_9);
@@ -91,17 +86,17 @@ fn main::{closure#0}(_1: Pin<&mut {coroutine@$DIR/coroutine.rs:18:5: 18:18}>, _2
9186 StorageLive(_12);
9287 StorageLive(_13);
9388 _13 = &(((*_18) as variant#4).0: std::string::String);
94- _12 = <String as Clone>::clone(move _13) -> [return : bb6 , unwind unreachable];
89+ _12 = <String as Clone>::clone(move _13) -> [return : bb5 , unwind unreachable];
9590 }
9691
97- bb6 : {
92+ bb5 : {
9893 StorageDead(_13);
9994 StorageLive(_14);
10095 StorageLive(_15);
101- _15 = Location::<'_>::caller() -> [return : bb7 , unwind unreachable];
96+ _15 = Location::<'_>::caller() -> [return : bb6 , unwind unreachable];
10297 }
10398
104- bb7 : {
99+ bb6 : {
105100 _14 = &(*_15);
106101 _9 = (move _10, move _12, move _14);
107102 StorageDead(_14);
@@ -116,54 +111,43 @@ fn main::{closure#0}(_1: Pin<&mut {coroutine@$DIR/coroutine.rs:18:5: 18:18}>, _2
116111 return;
117112 }
118113
119- bb8 : {
120- StorageDead(_9);
121- drop(_8) -> [return : bb9, unwind unreachable];
122- }
123-
124- bb9 : {
114+ bb7 : {
125115 StorageDead(_15);
126116 StorageDead(_11);
127117 StorageDead(_8);
128118 _16 = const ();
129- drop((((*_18) as variant#4).0: std::string::String)) -> [return: bb10 , unwind unreachable];
119+ drop((((*_18) as variant#4).0: std::string::String)) -> [return: bb8 , unwind unreachable];
130120 }
131121
132- bb10 : {
133- goto -> bb12;
134- }
135-
136- bb11 : {
122+ bb8 : {
137123 _0 = CoroutineState::<(&str, String, &Location<'_>), ()>::Complete(move _16);
138124 discriminant((*_18)) = 1;
139125 return;
140126 }
141127
142- bb12 : {
143- goto -> bb11;
144- }
145-
146- bb13 : {
128+ bb9 : {
147129 StorageLive(_3);
148130 StorageLive(_4);
149131 _3 = move _2;
150- goto -> bb4;
132+ StorageDead(_4);
133+ drop(_3) -> [return : bb4, unwind unreachable];
151134 }
152135
153- bb14 : {
136+ bb10 : {
154137 StorageLive(_8);
155138 StorageLive(_9);
156139 StorageLive(_11);
157140 StorageLive(_15);
158141 _8 = move _2;
159- goto -> bb8;
142+ StorageDead(_9);
143+ drop(_8) -> [return : bb7, unwind unreachable];
160144 }
161145
162- bb15 : {
163- assert(const false, "coroutine resumed after completion") -> [success : bb15 , unwind unreachable];
146+ bb11 : {
147+ assert(const false, "coroutine resumed after completion") -> [success : bb11 , unwind unreachable];
164148 }
165149
166- bb16 : {
150+ bb12 : {
167151 unreachable;
168152 }
169153}
0 commit comments