mirror of
https://github.com/verilator/verilator.git
synced 2025-01-05 22:27:35 +00:00
Preproc: Fix error when macro call has commas in concatenate.
git-svn-id: file://localhost/svn/verilator/trunk/verilator@1071 77ca24e4-aefa-0310-84f0-b9a241c72d87
This commit is contained in:
parent
cc6c71eb37
commit
bb038e86a2
2
Changes
2
Changes
@ -7,6 +7,8 @@ indicates the contributor was also the author of the fix; Thanks!
|
|||||||
|
|
||||||
**** Fix syntax error when "`include `defname" is ifdefed. [John Dickol]
|
**** Fix syntax error when "`include `defname" is ifdefed. [John Dickol]
|
||||||
|
|
||||||
|
**** Fix error when macro call has commas in concatenate. [John Dickol]
|
||||||
|
|
||||||
**** Fix compile errors under Fedora 9, GCC 4.3.0. [by Jeremy Bennett]
|
**** Fix compile errors under Fedora 9, GCC 4.3.0. [by Jeremy Bennett]
|
||||||
|
|
||||||
* Verilator 3.664 2008/05/08
|
* Verilator 3.664 2008/05/08
|
||||||
|
@ -141,6 +141,10 @@ psl [p]sl
|
|||||||
<ARGMODE><<EOF>> { yyerrorf("EOF in define argument list\n"); yyleng = 0; yyterminate(); }
|
<ARGMODE><<EOF>> { yyerrorf("EOF in define argument list\n"); yyleng = 0; yyterminate(); }
|
||||||
<ARGMODE>{crnl} { linenoInc(); yytext=(char*)"\n"; yyleng=1; return(VP_WHITE); }
|
<ARGMODE>{crnl} { linenoInc(); yytext=(char*)"\n"; yyleng=1; return(VP_WHITE); }
|
||||||
<ARGMODE>{quote} { yy_push_state(STRMODE); yymore(); }
|
<ARGMODE>{quote} { yy_push_state(STRMODE); yymore(); }
|
||||||
|
<ARGMODE>[{\[] { V3PreLex::s_currentLexp->m_parenLevel++;
|
||||||
|
appendDefValue(yytext,yyleng); }
|
||||||
|
<ARGMODE>[}\]] { V3PreLex::s_currentLexp->m_parenLevel--;
|
||||||
|
appendDefValue(yytext,yyleng); }
|
||||||
<ARGMODE>[(] { V3PreLex::s_currentLexp->m_parenLevel++;
|
<ARGMODE>[(] { V3PreLex::s_currentLexp->m_parenLevel++;
|
||||||
// Note paren level 0 means before "(" of starting args
|
// Note paren level 0 means before "(" of starting args
|
||||||
// Level 1 means "," between arguments
|
// Level 1 means "," between arguments
|
||||||
@ -162,7 +166,7 @@ psl [p]sl
|
|||||||
yy_pop_state(); return (VP_DEFARG);
|
yy_pop_state(); return (VP_DEFARG);
|
||||||
}}
|
}}
|
||||||
<ARGMODE>"`"{symb} { return (VP_DEFREF); } /* defref in defref */
|
<ARGMODE>"`"{symb} { return (VP_DEFREF); } /* defref in defref */
|
||||||
<ARGMODE>[^\/\*\n\r\\(,)\"`]+ |
|
<ARGMODE>[^\/\*\n\r\\(,){}\[\]\"`]+ |
|
||||||
<ARGMODE>. { appendDefValue(yytext,yyleng); }
|
<ARGMODE>. { appendDefValue(yytext,yyleng); }
|
||||||
|
|
||||||
/* One line comments. */
|
/* One line comments. */
|
||||||
|
Loading…
Reference in New Issue
Block a user