@@ -52,7 +52,7 @@ fn main::{closure#0}(_1: Pin<&mut {coroutine@$DIR/coroutine.rs:18:5: 18:18}>, _2
5252 bb0 : {
5353 _18 = deref_copy (_1.0 : &mut {coroutine@$DIR/coroutine.rs:18:5: 18:18});
5454 _17 = discriminant((*_18));
55- switchInt(move _17) -> [0 : bb1, 1: bb15 , 3: bb13 , 4: bb14 , otherwise: bb16 ];
55+ switchInt(move _17) -> [0 : bb1, 1: bb11 , 3: bb9 , 4: bb10 , otherwise: bb12 ];
5656 }
5757
5858 bb1 : {
@@ -86,11 +86,6 @@ fn main::{closure#0}(_1: Pin<&mut {coroutine@$DIR/coroutine.rs:18:5: 18:18}>, _2
8686 }
8787
8888 bb4 : {
89- StorageDead(_4);
90- drop(_3) -> [return : bb5, unwind unreachable];
91- }
92-
93- bb5 : {
9489 StorageDead(_3);
9590 StorageLive(_8);
9691 StorageLive(_9);
@@ -102,17 +97,17 @@ fn main::{closure#0}(_1: Pin<&mut {coroutine@$DIR/coroutine.rs:18:5: 18:18}>, _2
10297 StorageLive(_13);
10398 _22 = deref_copy (_1.0 : &mut {coroutine@$DIR/coroutine.rs:18:5: 18:18});
10499 _13 = &(((*_22) as variant#4).0: std::string::String);
105- _12 = <String as Clone>::clone(move _13) -> [return : bb6 , unwind unreachable];
100+ _12 = <String as Clone>::clone(move _13) -> [return : bb5 , unwind unreachable];
106101 }
107102
108- bb6 : {
103+ bb5 : {
109104 StorageDead(_13);
110105 StorageLive(_14);
111106 StorageLive(_15);
112- _15 = Location::<'_>::caller() -> [return : bb7 , unwind unreachable];
107+ _15 = Location::<'_>::caller() -> [return : bb6 , unwind unreachable];
113108 }
114109
115- bb7 : {
110+ bb6 : {
116111 _14 = &(*_15);
117112 _9 = (move _10, move _12, move _14);
118113 StorageDead(_14);
@@ -128,56 +123,45 @@ fn main::{closure#0}(_1: Pin<&mut {coroutine@$DIR/coroutine.rs:18:5: 18:18}>, _2
128123 return;
129124 }
130125
131- bb8 : {
132- StorageDead(_9);
133- drop(_8) -> [return : bb9, unwind unreachable];
134- }
135-
136- bb9 : {
126+ bb7 : {
137127 StorageDead(_15);
138128 StorageDead(_11);
139129 StorageDead(_8);
140130 _16 = const ();
141131 _24 = deref_copy (_1.0 : &mut {coroutine@$DIR/coroutine.rs:18:5: 18:18});
142- drop((((*_24) as variant#4).0: std::string::String)) -> [return: bb10 , unwind unreachable];
132+ drop((((*_24) as variant#4).0: std::string::String)) -> [return: bb8 , unwind unreachable];
143133 }
144134
145- bb10 : {
146- goto -> bb12;
147- }
148-
149- bb11 : {
135+ bb8 : {
150136 _0 = CoroutineState::<(&str, String, &Location<'_>), ()>::Complete(move _16);
151137 _25 = deref_copy (_1.0 : &mut {coroutine@$DIR/coroutine.rs:18:5: 18:18});
152138 discriminant((*_25)) = 1;
153139 return;
154140 }
155141
156- bb12 : {
157- goto -> bb11;
158- }
159-
160- bb13 : {
142+ bb9 : {
161143 StorageLive(_3);
162144 StorageLive(_4);
163145 _3 = move _2;
164- goto -> bb4;
146+ StorageDead(_4);
147+ drop(_3) -> [return : bb4, unwind unreachable];
165148 }
166149
167- bb14 : {
150+ bb10 : {
168151 StorageLive(_8);
169152 StorageLive(_9);
170153 StorageLive(_11);
171154 StorageLive(_15);
172155 _8 = move _2;
173- goto -> bb8;
156+ StorageDead(_9);
157+ drop(_8) -> [return : bb7, unwind unreachable];
174158 }
175159
176- bb15 : {
177- assert(const false, "coroutine resumed after completion") -> [success : bb15 , unwind unreachable];
160+ bb11 : {
161+ assert(const false, "coroutine resumed after completion") -> [success : bb11 , unwind unreachable];
178162 }
179163
180- bb16 : {
164+ bb12 : {
181165 unreachable;
182166 }
183167}
0 commit comments