From 3f9c03a37b79816a50d067cee87fc2e129371b59 Mon Sep 17 00:00:00 2001 From: Dustin Spicuzza Date: Thu, 31 Dec 2020 00:24:01 -0500 Subject: [PATCH] Ensure that lexers don't share state --- cxxheaderparser/lexer.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/cxxheaderparser/lexer.py b/cxxheaderparser/lexer.py index d982caa..3a53671 100644 --- a/cxxheaderparser/lexer.py +++ b/cxxheaderparser/lexer.py @@ -248,6 +248,7 @@ class Lexer: print("Lex error: ", v) _lexer = None + lex: lex.Lexer def __new__(cls, *args, **kwargs): # only build the lexer once @@ -256,6 +257,7 @@ class Lexer: cls._lexer = lex.lex(module=inst) inst.lex = cls._lexer.clone(inst) + inst.lex.begin("INITIAL") return inst def __init__(self, filename: typing.Optional[str] = None):