summaryrefslogtreecommitdiffstats
path: root/src/vhdljjparser.cpp
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2015-12-20 09:37:34 (GMT)
committerDimitri van Heesch <dimitri@stack.nl>2015-12-20 09:39:51 (GMT)
commit4bef27771fec1892331df637dd6184abac36fd8f (patch)
tree76c9d48141c37b2986c00c1669b100b80de2f416 /src/vhdljjparser.cpp
parentda09bff6dc9cad40c72b6a858728093cc41dff47 (diff)
downloadDoxygen-4bef27771fec1892331df637dd6184abac36fd8f.zip
Doxygen-4bef27771fec1892331df637dd6184abac36fd8f.tar.gz
Doxygen-4bef27771fec1892331df637dd6184abac36fd8f.tar.bz2
Bug 758495 - Bug in VHDL parser + other fixes
Diffstat (limited to 'src/vhdljjparser.cpp')
-rw-r--r--src/vhdljjparser.cpp17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/vhdljjparser.cpp b/src/vhdljjparser.cpp
index acef592..c29bc69 100644
--- a/src/vhdljjparser.cpp
+++ b/src/vhdljjparser.cpp
@@ -164,6 +164,9 @@ void VHDLLanguageScanner::parseInput(const char *fileName,const char *fileBuf,En
g_thisParser=this;
bool inLine=false;
inputString=fileBuf;
+
+ // fprintf(stderr,"\n ============= %s\n ==========\n",fileBuf);
+
if (strlen(fileName)==0)
{
inLine=true;
@@ -291,6 +294,8 @@ bool checkInlineCode(QCString & doc)
void VhdlParser::handleFlowComment(const char* doc)
{
+ lineCount(doc);
+
if (VhdlDocGen::getFlowMember())
{
QCString qcs(doc);
@@ -305,7 +310,9 @@ void VhdlParser::handleCommentBlock(const char* doc1,bool brief)
{
int position=0;
static bool isIn;
- QCString doc(doc1);
+ QCString doc;
+ doc.append(doc1);
+ // fprintf(stderr,"\n %s",doc.data());
if (doc.isEmpty()) return;
if (checkMultiComment(doc,yyLineNr))
@@ -359,6 +366,14 @@ void VhdlParser::handleCommentBlock(const char* doc1,bool brief)
current->docLine = yyLineNr;
}
// printf("parseCommentBlock file<%s>\n [%s]\n at line [%d] \n ",yyFileName.data(),doc.data(),iDocLine);
+
+ int j=doc.find("[plant]");
+ if (j>=0)
+ {
+ doc=doc.remove(j,7);
+ current->stat=true;
+ }
+
while (parseCommentBlock(
g_thisParser,
current,