diff options
author | Dimitri van Heesch <doxygen@gmail.com> | 2020-01-03 09:36:17 (GMT) |
---|---|---|
committer | Dimitri van Heesch <doxygen@gmail.com> | 2020-01-03 09:36:17 (GMT) |
commit | 5b9bf6e3549ac9011f607cc50e764da6af347689 (patch) | |
tree | dd3dc39e4a58b02a9f75b66b1b25401c40fd5c49 /src/vhdldocgen.cpp | |
parent | 76613eb3154778cc1b34efc338cc2ba05e88b645 (diff) | |
download | Doxygen-5b9bf6e3549ac9011f607cc50e764da6af347689.zip Doxygen-5b9bf6e3549ac9011f607cc50e764da6af347689.tar.gz Doxygen-5b9bf6e3549ac9011f607cc50e764da6af347689.tar.bz2 |
Make VHDL parser reentrant
Diffstat (limited to 'src/vhdldocgen.cpp')
-rw-r--r-- | src/vhdldocgen.cpp | 37 |
1 files changed, 2 insertions, 35 deletions
diff --git a/src/vhdldocgen.cpp b/src/vhdldocgen.cpp index 3c30174..4619b7a 100644 --- a/src/vhdldocgen.cpp +++ b/src/vhdldocgen.cpp @@ -2727,29 +2727,7 @@ void assignBinding(VhdlConfNode * conf) entBind=conf->binding; QCString conf2=VhdlDocGen::parseForBinding(entBind,arcBind); - if (qstricmp(conf2,"configuration")==0) - { - QList<VhdlConfNode> confList = getVhdlConfiguration(); - VhdlConfNode* vconf; - // bool found=false; - for (uint iter=0;iter<confList.count(); iter++) - { - vconf= (VhdlConfNode *)confList.at(iter); - QCString n=VhdlDocGen::getIndexWord(vconf->confVhdl.data(),0); - if (n==entBind) - { - // found=true; - entBind=VhdlDocGen::getIndexWord(vconf->confVhdl.data(),1); - QCString a=VhdlDocGen::getIndexWord(conf->compSpec.data(),0); - QCString e=VhdlDocGen::getIndexWord(conf->confVhdl.data(),1); - a=e+"::"+a; - archClass= VhdlDocGen::findVhdlClass(a.data());//Doxygen::classSDict->find(a.data()); - entClass= VhdlDocGen::findVhdlClass(e.data());//Doxygen::classSDict->find(e.data()); - break; - } - } - } - else // conf2!=configuration + if (conf2!="configuration") { QCString a,c,e; if (conf->isInlineConf) @@ -2852,17 +2830,6 @@ void VhdlDocGen::computeVhdlComponentRelations() { QCString entity,arch,inst; - QList<VhdlConfNode> confList = getVhdlConfiguration(); - - for (uint iter=0;iter<confList.count(); iter++) - { - VhdlConfNode* conf= (VhdlConfNode *)confList.at(iter); - if (!(conf->isInlineConf || conf->isLeaf)) - { - continue; - } - assignBinding(conf); - } for (const auto &cur : getVhdlInstList()) { @@ -3630,7 +3597,7 @@ void FlowChart::addFlowChart(int type,const char* text,const char* exp, const ch FlowChart *fl=new FlowChart(type,typeString.data(),expression.data(),label); - fl->line=vhdl::parser::VhdlParser::getLine(); + fl->line=1; // TODO: use getLine(); of the parser if (type & (START_NO | VARIABLE_NO)) { |