summaryrefslogtreecommitdiffstats
path: root/vhdlparser/vhdlparser.jj
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2015-01-02 16:28:03 (GMT)
committerDimitri van Heesch <dimitri@stack.nl>2015-01-02 16:28:03 (GMT)
commit34b00c442308efe169cc89fad62588fdce1d84e8 (patch)
tree19ceab12fa37beece4a9a94a0dff26ed14a28779 /vhdlparser/vhdlparser.jj
parent981515820134a2171d2b6a912275e919f56532b4 (diff)
downloadDoxygen-34b00c442308efe169cc89fad62588fdce1d84e8.zip
Doxygen-34b00c442308efe169cc89fad62588fdce1d84e8.tar.gz
Doxygen-34b00c442308efe169cc89fad62588fdce1d84e8.tar.bz2
Various VHDL related fixes
Diffstat (limited to 'vhdlparser/vhdlparser.jj')
-rw-r--r--vhdlparser/vhdlparser.jj24
1 files changed, 15 insertions, 9 deletions
diff --git a/vhdlparser/vhdlparser.jj b/vhdlparser/vhdlparser.jj
index aa42127..befc4e0 100644
--- a/vhdlparser/vhdlparser.jj
+++ b/vhdlparser/vhdlparser.jj
@@ -86,6 +86,7 @@ SKIP:
<#DOXYGEN_VHDL_COMMENT: (" "|"\t")*"--!"(~["\n", "\r"])* ("\n" | "\r" | "\r\n")?>
| <MULT_DOXYGEN_COMMENT: (<DOXYGEN_VHDL_COMMENT>)+ >
{
+ {
QCString doc(image.data());
int count=doc.contains("--!");
::vhdl::parser::VhdlParser::setMultCommentLine();
@@ -94,6 +95,7 @@ SKIP:
::vhdl::parser::VhdlParser::oneLineComment(doc);
else
::vhdl::parser::VhdlParser::handleCommentBlock(image.data(),FALSE); ;
+ }
}
|<VHDL_FLOWCHART_COMMENT: "--#" (~["\n", "\r"])* ("\n" | "\r" | "\r\n")?> { ::vhdl::parser::VhdlParser::handleFlowComment(image.data());}
@@ -108,10 +110,12 @@ SKIP :
{
<MULT_DOXYGEN_VHDL_COMMENT_2008 : "/*!" (~[])* "*/" >
{
- QCString q(image.data());
- q.stripPrefix("/*!");
- q.resize(q.length()-2);
- ::vhdl::parser::VhdlParser::handleCommentBlock(q.data(),TRUE);image.clear();
+ {
+ QCString q(image.data());
+ q.stripPrefix("/*!");
+ q.resize(q.length()-2);
+ ::vhdl::parser::VhdlParser::handleCommentBlock(q.data(),TRUE);image.clear();
+ }
}
| <MULT_VHDL_2008_COMMENT : "/*" (~[])* "*/" > {::vhdl::parser::VhdlParser::lineCount(image.data());image.clear();}
}
@@ -289,7 +293,7 @@ TOKEN:
| <STRINGLITERAL: (( ["\""](<GRAPHIC_CHARACTER>)*) "\"")+ >
| <BASIC_IDENTIFIER: (<LETTER> ( (["_"])* <LETTER_OR_DIGIT> )*) >
| <EXTENDED_CHARACTER: ( ["\\"](<GRAPHIC_CHARACTER>)*["\\"] ) >
- | <CHARACTER_LITERAL: (["'"]<GRAPHIC_CHARACTER>["'"]) >
+ | <CHARACTER_LITERAL: (["'"](<GRAPHIC_CHARACTER>|<QUOTE>)["'"]) >
| <DECIMAL_LITERAL: (<INTEGER> (["."]<INTEGER>)? (<EXPONENT>)? ) >
| <BASED_INTEGER: <LETTER_OR_DIGIT>( <LETTER_OR_DIGIT>)* >
| <BASED_LITERAL: <INTEGER>["#"]<BASED_INTEGER>(["."] <BASED_INTEGER>)? ["#"] (<EXPONENT>)? >
@@ -306,6 +310,7 @@ TOKEN:
| < #OTHER_SPECIAL_CHARACTER: ["%","!","$","@","?","[","\\","]","^","`","{","}","~","\u00A0"-"\u00FF"]>
| < #SPACE_CHARACTER: [" ","\t"] >
| < #LOWER_CASE_LETTER: ["a"-"z"] >
+ | < #QUOTE: ["\""] >
| <VHDL2008TOOLDIR : ["`"](<GRAPHIC_CHARACTER>|<STRINGLITERAL>)+ >
}
@@ -577,7 +582,7 @@ attribute_declaration()
LOOKAHEAD(3)
group_template_declaration()
| group_declaration()
-| <VHDL2008TOOLDIR>
+//| <VHDL2008TOOLDIR>
}
void block_declarative_part() : {}
@@ -2612,9 +2617,10 @@ void generate_statement_body() : {}
void generate_statement_body1() : {}
{
- LOOKAHEAD(block_declarative_item()<BEGIN_T> )
- (block_declarative_item() )* <BEGIN_T> (concurrent_statement())*
- | (concurrent_statement())*
+ // [LOOKAHEAD(block_declarative_item()<BEGIN_T> )(block_declarative_item() )* <BEGIN_T>] (concurrent_statement())*
+
+ [(LOOKAHEAD(block_declarative_item())block_declarative_item() )* <BEGIN_T>] (concurrent_statement())*
+ // | (concurrent_statement())*
}
QCString external_name(): {QCString s,s1,s2;}