diff options
author | Pablo Galindo <Pablogsal@gmail.com> | 2020-10-31 00:40:42 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-10-31 00:40:42 (GMT) |
commit | ddcd57e3ea75ab0ad370bbaaa6b76338edbca395 (patch) | |
tree | ad2dc28a4ee0ccb922517d4af8a868a3ce19d08a /Parser | |
parent | 09c6120be8c70366495b027ae3daa213609de3ed (diff) | |
download | cpython-ddcd57e3ea75ab0ad370bbaaa6b76338edbca395.zip cpython-ddcd57e3ea75ab0ad370bbaaa6b76338edbca395.tar.gz cpython-ddcd57e3ea75ab0ad370bbaaa6b76338edbca395.tar.bz2 |
[3.9] bpo-42214: Fix check for NOTEQUAL token in the PEG parser for the barry_as_flufl rule (GH-23048) (GH-23051)
(cherry picked from commit 06f8c3328dcd81c84d1ee2b3a57b5381dcb38482)
Co-authored-by: Pablo Galindo <Pablogsal@gmail.com>
Diffstat (limited to 'Parser')
-rw-r--r-- | Parser/pegen/parse.c | 2 | ||||
-rw-r--r-- | Parser/pegen/pegen.c | 3 | ||||
-rw-r--r-- | Parser/pegen/pegen.h | 2 |
3 files changed, 3 insertions, 4 deletions
diff --git a/Parser/pegen/parse.c b/Parser/pegen/parse.c index 48a2443..bae9463 100644 --- a/Parser/pegen/parse.c +++ b/Parser/pegen/parse.c @@ -21307,7 +21307,7 @@ _tmp_93_rule(Parser *p) ) { D(fprintf(stderr, "%*c+ _tmp_93[%d-%d]: %s succeeded!\n", p->level, ' ', _mark, p->mark, "'!='")); - _res = _PyPegen_check_barry_as_flufl ( p ) ? NULL : tok; + _res = _PyPegen_check_barry_as_flufl ( p , tok ) ? NULL : tok; if (_res == NULL && PyErr_Occurred()) { p->error_indicator = 1; D(p->level--); diff --git a/Parser/pegen/pegen.c b/Parser/pegen/pegen.c index 78891af..4e742a5 100644 --- a/Parser/pegen/pegen.c +++ b/Parser/pegen/pegen.c @@ -62,8 +62,7 @@ init_normalization(Parser *p) /* Checks if the NOTEQUAL token is valid given the current parser flags 0 indicates success and nonzero indicates failure (an exception may be set) */ int -_PyPegen_check_barry_as_flufl(Parser *p) { - Token *t = p->tokens[p->fill - 1]; +_PyPegen_check_barry_as_flufl(Parser *p, Token* t) { assert(t->bytes != NULL); assert(t->type == NOTEQUAL); diff --git a/Parser/pegen/pegen.h b/Parser/pegen/pegen.h index 2fea84f..a2f524a 100644 --- a/Parser/pegen/pegen.h +++ b/Parser/pegen/pegen.h @@ -263,7 +263,7 @@ expr_ty _PyPegen_collect_call_seqs(Parser *, asdl_seq *, asdl_seq *, int end_col_offset, PyArena *arena); expr_ty _PyPegen_concatenate_strings(Parser *p, asdl_seq *); asdl_seq *_PyPegen_join_sequences(Parser *, asdl_seq *, asdl_seq *); -int _PyPegen_check_barry_as_flufl(Parser *); +int _PyPegen_check_barry_as_flufl(Parser *, Token *); mod_ty _PyPegen_make_module(Parser *, asdl_seq *); // Error reporting helpers |