X-Git-Url: https://git.madduck.net/etc/vim.git/blobdiff_plain/3e731527e4418b0b6d9791d6e32caee9227ba69d..e2adcd7de10eb570987bb894d95f2ff8c8693b9f:/src/blib2to3/pgen2/parse.py?ds=inline diff --git a/src/blib2to3/pgen2/parse.py b/src/blib2to3/pgen2/parse.py index 8fe9667..d6deaac 100644 --- a/src/blib2to3/pgen2/parse.py +++ b/src/blib2to3/pgen2/parse.py @@ -54,7 +54,7 @@ def stack_copy( stack: List[Tuple[DFAS, int, RawNode]] ) -> List[Tuple[DFAS, int, RawNode]]: """Nodeless stack copy.""" - return [(copy.deepcopy(dfa), label, DUMMY_NODE) for dfa, label, _ in stack] + return [(dfa, label, DUMMY_NODE) for dfa, label, _ in stack] class Recorder: @@ -114,7 +114,7 @@ class Recorder: args.insert(0, ilabel) func(*args) - def determine_route(self, value: Text = None, force: bool = False) -> Optional[int]: + def determine_route(self, value: Optional[Text] = None, force: bool = False) -> Optional[int]: alive_ilabels = self.ilabels if len(alive_ilabels) == 0: *_, most_successful_ilabel = self._dead_ilabels @@ -269,6 +269,10 @@ class Parser(object): break next_token_type, next_token_value, *_ = proxy.eat(counter) + if next_token_type in (tokenize.COMMENT, tokenize.NL): + counter += 1 + continue + if next_token_type == tokenize.OP: next_token_type = grammar.opmap[next_token_value]