diff options
author | Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> | 2022-02-22 02:00:50 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-02-22 12:00:50 +0200 |
commit | f20ac2ed076df63a77f65ff2660148af9f1a9b3c (patch) | |
tree | 75d6e542bc8626a603ec2000061228696a1d0925 /Parser/tokenizer.c | |
parent | [3.10] bpo-46732: fix __bool__ docstring (GH-31301) (GH-31473) (diff) | |
download | cpython-f20ac2ed076df63a77f65ff2660148af9f1a9b3c.tar.gz cpython-f20ac2ed076df63a77f65ff2660148af9f1a9b3c.tar.bz2 cpython-f20ac2ed076df63a77f65ff2660148af9f1a9b3c.zip |
bpo-46820: Fix a SyntaxError in a numeric literal followed by "not in" (GH-31479) (GH-31493)
Fix parsing a numeric literal immediately (without spaces) followed by
"not in" keywords, like in "1not in x". Now the parser only emits
a warning, not a syntax error.
(cherry picked from commit 090e5c4b946b28f50fce445916c5d3ec45c8f45f)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Diffstat (limited to 'Parser/tokenizer.c')
-rw-r--r-- | Parser/tokenizer.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Parser/tokenizer.c b/Parser/tokenizer.c index eb15ef7a5d5..267ccec33fd 100644 --- a/Parser/tokenizer.c +++ b/Parser/tokenizer.c @@ -1251,6 +1251,9 @@ verify_end_of_number(struct tok_state *tok, int c, const char *kind) else if (c == 'o') { r = lookahead(tok, "r"); } + else if (c == 'n') { + r = lookahead(tok, "ot"); + } if (r) { tok_backup(tok, c); if (parser_warn(tok, "invalid %s literal", kind)) { |