From 37c0844b35b9a4d68f7ddf3a8b38d3e013f17d78 Mon Sep 17 00:00:00 2001 From: Neal Norwitz Date: Fri, 21 Oct 2005 06:24:02 +0000 Subject: Fix SF bug #1167751, Argument genexp corner case Incorrect code was generated for: foo(a = i for i in range(10)) This should have generated a SyntaxError. Fix the Grammar so it raises a SyntaxError and test it. I'm uncertain whether this should be backported. It makes something that was Syntactically valid invalid. However, the code would either be completely broken or do the wrong thing. --- Grammar/Grammar | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'Grammar') diff --git a/Grammar/Grammar b/Grammar/Grammar index 01e4afd6fc..d8106e9719 100644 --- a/Grammar/Grammar +++ b/Grammar/Grammar @@ -102,7 +102,7 @@ dictmaker: test ':' test (',' test ':' test)* [','] classdef: 'class' NAME ['(' [testlist] ')'] ':' suite arglist: (argument ',')* (argument [',']| '*' test [',' '**' test] | '**' test) -argument: [test '='] test [gen_for] # Really [keyword '='] test +argument: test [gen_for] | test '=' test ['(' gen_for ')'] # Really [keyword '='] test list_iter: list_for | list_if list_for: 'for' exprlist 'in' testlist_safe [list_iter] -- cgit v1.2.1