bpo-30858: Improve error location for expressions with assignments (GH-23753)

Co-authored-by: Lysandros Nikolaou <lisandrosnik@gmail.com>
This commit is contained in:
Pablo Galindo 2020-12-13 16:46:48 +00:00 committed by GitHub
parent da431f789b
commit 43c4fb6c90
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 15 additions and 6 deletions

View file

@ -14562,12 +14562,12 @@ invalid_kwarg_rule(Parser *p)
return NULL;
}
D(fprintf(stderr, "%*c> invalid_kwarg[%d-%d]: %s\n", p->level, ' ', _mark, p->mark, "expression '='"));
Token * _literal;
expr_ty a;
Token * a;
expr_ty expression_var;
if (
(a = expression_rule(p)) // expression
(expression_var = expression_rule(p)) // expression
&&
(_literal = _PyPegen_expect_token(p, 22)) // token='='
(a = _PyPegen_expect_token(p, 22)) // token='='
)
{
D(fprintf(stderr, "%*c+ invalid_kwarg[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "expression '='"));