about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJonas Schievink <jonasschievink@gmail.com>2020-03-14 15:46:57 +0100
committerJonas Schievink <jonasschievink@gmail.com>2020-03-14 15:46:57 +0100
commit38fa3783ce635814b7e3814ab26d52b653fc0ab0 (patch)
tree0c899a992f7c33d5185d51b68635ccda840efebb
parentcb58de81654d92074a4abdbf90400f35f6a0062f (diff)
Swap inserts to keep the original ordering
-rw-r--r--src/librustc_mir/transform/generator.rs8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/librustc_mir/transform/generator.rs b/src/librustc_mir/transform/generator.rs
index b386582947f..0001bb05363 100644
--- a/src/librustc_mir/transform/generator.rs
+++ b/src/librustc_mir/transform/generator.rs
@@ -1099,17 +1099,17 @@ fn create_generator_resume_function<'tcx>(
     // Panic when resumed on the returned or poisoned state
     let generator_kind = body.generator_kind.unwrap();
 
-    if can_return {
+    if can_unwind {
         cases.insert(
             1,
-            (RETURNED, insert_panic_block(tcx, body, ResumedAfterReturn(generator_kind))),
+            (POISONED, insert_panic_block(tcx, body, ResumedAfterPanic(generator_kind))),
         );
     }
 
-    if can_unwind {
+    if can_return {
         cases.insert(
             1,
-            (POISONED, insert_panic_block(tcx, body, ResumedAfterPanic(generator_kind))),
+            (RETURNED, insert_panic_block(tcx, body, ResumedAfterReturn(generator_kind))),
         );
     }