From: Jelle Zijlstra Date: Fri, 19 May 2023 15:16:39 +0000 (-0700) Subject: gh-104602: Add additional test for listcomp with lambda (#104639) X-Git-Tag: v3.12.0b1~54 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=dbe171e6098fbb96beed81db2c34f6428109e005;p=thirdparty%2FPython%2Fcpython.git gh-104602: Add additional test for listcomp with lambda (#104639) This threw a SystemError before #104603. Adding a separate test because this was a different failure mode than the other two new tests from #104603, both of which used to segfault. --- diff --git a/Lib/test/test_listcomps.py b/Lib/test/test_listcomps.py index 185658ab5a4c..c2cf058c321f 100644 --- a/Lib/test/test_listcomps.py +++ b/Lib/test/test_listcomps.py @@ -510,6 +510,16 @@ class ListComprehensionTest(unittest.TestCase): """ self._check_in_scopes(code, {"z": 1, "out": [(3, 2, 1)]}) + def test_lambda_in_iter(self): + code = """ + (func, c), = [(a, b) for b in [1] for a in [lambda : a]] + d = func() + assert d is func + # must use "a" in this scope + e = a if False else None + """ + self._check_in_scopes(code, {"c": 1, "e": None}) + def test_assign_to_comp_iter_var_in_outer_function(self): code = """ a = [1 for a in [0]]