We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 017e9fd commit d082634Copy full SHA for d082634
Python/compile.c
@@ -2189,7 +2189,7 @@ compiler_async_for(struct compiler *c, stmt_ty s)
2189
_Py_IDENTIFIER(StopAsyncIteration);
2190
2191
basicblock *try, *except, *end, *after_try, *try_cleanup,
2192
- *after_loop, *after_loop_else;
+ *after_loop_else;
2193
2194
PyObject *stop_aiter_error = _PyUnicode_FromId(&PyId_StopAsyncIteration);
2195
if (stop_aiter_error == NULL) {
@@ -2201,14 +2201,14 @@ compiler_async_for(struct compiler *c, stmt_ty s)
2201
end = compiler_new_block(c);
2202
after_try = compiler_new_block(c);
2203
try_cleanup = compiler_new_block(c);
2204
- after_loop = compiler_new_block(c);
2205
after_loop_else = compiler_new_block(c);
2206
2207
if (try == NULL || except == NULL || end == NULL
2208
- || after_try == NULL || try_cleanup == NULL)
+ || after_try == NULL || try_cleanup == NULL
+ || after_loop_else == NULL)
2209
return 0;
2210
2211
- ADDOP_JREL(c, SETUP_LOOP, after_loop);
+ ADDOP_JREL(c, SETUP_LOOP, end);
2212
if (!compiler_push_fblock(c, LOOP, try))
2213
2214
@@ -2257,9 +2257,6 @@ compiler_async_for(struct compiler *c, stmt_ty s)
2257
ADDOP(c, POP_BLOCK); /* for SETUP_LOOP */
2258
compiler_pop_fblock(c, LOOP, try);
2259
2260
- compiler_use_next_block(c, after_loop);
2261
- ADDOP_JABS(c, JUMP_ABSOLUTE, end);
2262
-
2263
compiler_use_next_block(c, after_loop_else);
2264
VISIT_SEQ(c, stmt, s->v.For.orelse);
2265
@@ -3753,7 +3750,7 @@ compiler_async_comprehension_generator(struct compiler *c,
3753
3750
3754
3751
3755
3752
comprehension_ty gen;
3756
- basicblock *anchor, *skip, *if_cleanup, *try,
+ basicblock *anchor, *if_cleanup, *try,
3757
*after_try, *except, *try_cleanup;
3758
Py_ssize_t i, n;
3759
@@ -3766,13 +3763,12 @@ compiler_async_comprehension_generator(struct compiler *c,
3766
3763
3767
3764
3768
3765
except = compiler_new_block(c);
3769
- skip = compiler_new_block(c);
3770
if_cleanup = compiler_new_block(c);
3771
anchor = compiler_new_block(c);
3772
3773
- if (skip == NULL || if_cleanup == NULL || anchor == NULL ||
+ if (if_cleanup == NULL || anchor == NULL ||
3774
try == NULL || after_try == NULL ||
3775
- except == NULL || after_try == NULL) {
+ except == NULL || try_cleanup == NULL) {
3776
3777
}
3778
@@ -3866,8 +3862,6 @@ compiler_async_comprehension_generator(struct compiler *c,
3866
3862
default:
3867
3863
3868
3864
3869
3870
- compiler_use_next_block(c, skip);
3871
3865
3872
compiler_use_next_block(c, if_cleanup);
3873
ADDOP_JABS(c, JUMP_ABSOLUTE, try);