Mark Dickinson <dicki...@gmail.com> added the comment: +!. I had to do a very similar refactoring recently when trying to fix the parser module to understand keyword-only arguments and annotations.
Taking keyword-only arguments into account, I think the replacement needs to be: varargslist: (vfpdef ['=' test] (',' vfpdef ['=' test])* [',' ['*' [vfpdef] (',' vfpdef ['=' test])* [',' '**' vfpdef] | '**' vfpdef]] | '*' [vfpdef] (',' vfpdef ['=' test])* [',' '**' vfpdef] | '**' vfpdef) and the analogous replacement needs to be made in the production for 'typedargslist', too. BTW, I'm a bit surprised that the grammar doesn't allow for trailing commas after keyword-only arguments: that is, def f(a, b,): ... is fine, but def f(*, a, b,): ... is a SyntaxError ---------- nosy: +mark.dickinson _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue2009> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com