bpo-40334: Spacialized error message for invalid args after bare '*' (GH-19865)

When parsing things like `def f(*): pass` the old parser used to output `SyntaxError: named arguments must follow bare *`, which the new parser wasn't able to do.
This commit is contained in:
Lysandros Nikolaou 2020-05-04 13:58:31 +03:00 committed by GitHub
parent c3f001461d
commit e10e7c771b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 598 additions and 336 deletions

View file

@ -627,9 +627,9 @@ Corner-cases that used to fail to raise the correct error:
Traceback (most recent call last):
SyntaxError: cannot assign to __debug__
# >>> with (lambda *:0): pass
# Traceback (most recent call last):
# SyntaxError: named arguments must follow bare *
>>> with (lambda *:0): pass
Traceback (most recent call last):
SyntaxError: named arguments must follow bare *
Corner-cases that used to crash: