https://github.com/python/cpython/commit/868bfcc02ed42a1042851830b79c6877b7f1c7a8
commit: 868bfcc02ed42a1042851830b79c6877b7f1c7a8
branch: main
author: rimchoi <[email protected]>
committer: willingc <[email protected]>
date: 2024-11-02T17:04:53Z
summary:

gh-125832: Clarify comment for inlined comprehensions as per PEP-709 (#126322)

* Fix comprehensions comment to inlined by pep 709

* Update spacing

Co-authored-by: RUANG (James Roy) <[email protected]>

* Add reference to PEP 709

---------

Co-authored-by: Carol Willing <[email protected]>
Co-authored-by: RUANG (James Roy) <[email protected]>

files:
M Python/codegen.c

diff --git a/Python/codegen.c b/Python/codegen.c
index d79aee4859e51b..c060ed76f1eb5c 100644
--- a/Python/codegen.c
+++ b/Python/codegen.c
@@ -4087,9 +4087,12 @@ codegen_call_helper(compiler *c, location loc,
     return codegen_call_helper_impl(c, loc, n, args, NULL, keywords);
 }
 
-/* List and set comprehensions and generator expressions work by creating a
-  nested function to perform the actual iteration. This means that the
-  iteration variables don't leak into the current scope.
+/* List and set comprehensions work by being inlined at the location where
+   they are defined. The isolation of iteration variables is provided by
+   pushing/popping clashing locals on the stack. Generator expressions work
+   by creating a nested function to perform the actual iteration.
+   This means that the iteration variables don't leak into the current scope.
+   See https://peps.python.org/pep-0709/ for additional information.
   The defined function is called immediately following its definition, with the
   result of that call being the result of the expression.
   The LC/SC version returns the populated container, while the GE version is

_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/python-checkins.python.org/
Member address: [email protected]

Reply via email to