summaryrefslogtreecommitdiffstats
path: root/Python
diff options
context:
space:
mode:
Diffstat (limited to 'Python')
-rw-r--r--Python/compile.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/Python/compile.c b/Python/compile.c
index a8ab873..fa4313a 100644
--- a/Python/compile.c
+++ b/Python/compile.c
@@ -4520,11 +4520,14 @@ compiler_comprehension(struct compiler *c, expr_ty e, int type,
PyCodeObject *co = NULL;
comprehension_ty outermost;
PyObject *qualname = NULL;
- int is_async_function = c->u->u_ste->ste_coroutine;
int is_async_generator = 0;
- outermost = (comprehension_ty) asdl_seq_GET(generators, 0);
+ if (IS_TOP_LEVEL_AWAIT(c)) {
+ c->u->u_ste->ste_coroutine = 1;
+ }
+ int is_async_function = c->u->u_ste->ste_coroutine;
+ outermost = (comprehension_ty) asdl_seq_GET(generators, 0);
if (!compiler_enter_scope(c, name, COMPILER_SCOPE_COMPREHENSION,
(void *)e, e->lineno))
{