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) <longjinyii@outlook.com>

* Add reference to PEP 709

---------

Co-authored-by: Carol Willing <carolcode@willingconsulting.com>
Co-authored-by: RUANG (James Roy) <longjinyii@outlook.com>
This commit is contained in:
rimchoi 2024-11-03 02:04:53 +09:00 committed by GitHub
parent bd4be5e67d
commit 868bfcc02e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 6 additions and 3 deletions

View File

@ -4087,9 +4087,12 @@ codegen_call_helper(compiler *c, location loc,
return codegen_call_helper_impl(c, loc, n, args, NULL, keywords); return codegen_call_helper_impl(c, loc, n, args, NULL, keywords);
} }
/* List and set comprehensions and generator expressions work by creating a /* List and set comprehensions work by being inlined at the location where
nested function to perform the actual iteration. This means that the they are defined. The isolation of iteration variables is provided by
iteration variables don't leak into the current scope. 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 The defined function is called immediately following its definition, with the
result of that call being the result of the expression. result of that call being the result of the expression.
The LC/SC version returns the populated container, while the GE version is The LC/SC version returns the populated container, while the GE version is