diff options
Diffstat (limited to 'src/vhdljjparser.cpp')
-rw-r--r-- | src/vhdljjparser.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/vhdljjparser.cpp b/src/vhdljjparser.cpp index a7bac68..cddc7c1 100644 --- a/src/vhdljjparser.cpp +++ b/src/vhdljjparser.cpp @@ -94,7 +94,8 @@ void VHDLOutlineParser::Private::parseVhdlfile(const char *fileName, vhdlParser=new VhdlParser(tokenManager); vhdlParser->setOutlineParser(thisParser); vhdlParser->setSharedState(&shared); - tokenManager->ReInit(stream,0,vhdlParser); + tokenManager->setLexParser(vhdlParser); + tokenManager->ReInit(stream,0); tokenManager->setErrorHandler(tokErrHandler); VhdlErrorHandler *parserErrHandler=new VhdlErrorHandler(fileName); vhdlParser->setErrorHandler(parserErrHandler); @@ -594,7 +595,7 @@ int VHDLOutlineParser::getLine() void VHDLOutlineParser::setLineParsed(int tok) { - p->lineParse.reserve(tok+1); + if (p->lineParse.size()<=tok) p->lineParse.resize(tok+1); p->lineParse[tok]=p->yyLineNr; } |