From a24e67697362e76dd25d6901109277458b5971b9 Mon Sep 17 00:00:00 2001 From: Dennis Sweeney <36520290+sweeneyde@users.noreply.github.com> Date: Thu, 12 May 2022 11:31:43 -0400 Subject: [3.10] gh-92311: Let frame_setlineno jump over listcomps (GH-92717) --- Objects/frameobject.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'Objects/frameobject.c') diff --git a/Objects/frameobject.c b/Objects/frameobject.c index d02cf9d3ba..be84d33bf5 100644 --- a/Objects/frameobject.c +++ b/Objects/frameobject.c @@ -195,7 +195,10 @@ markblocks(PyCodeObject *code_obj, int len) break; case GET_ITER: case GET_AITER: - block_stack = push_block(block_stack, Loop); + // For-loops get a Loop block, but comprehensions do not. + if (_Py_OPCODE(code[i + 1]) != CALL_FUNCTION) { + block_stack = push_block(block_stack, Loop); + } blocks[i+1] = block_stack; break; case FOR_ITER: -- cgit v1.2.1