diff options
author | ogre <olagrottvik@gmail.com> | 2017-05-09 13:19:51 (GMT) |
---|---|---|
committer | Ola <ogre@localhost.localdomain> | 2017-05-09 20:36:25 (GMT) |
commit | 6c387a6be9128ced0b89f6fc75946cd1a85096fb (patch) | |
tree | 7eb3569a71e3da78e86bc3823996d7537a49eac6 | |
parent | af711e8eeea14a42d386beef5271af74a408d7e0 (diff) | |
download | Doxygen-6c387a6be9128ced0b89f6fc75946cd1a85096fb.zip Doxygen-6c387a6be9128ced0b89f6fc75946cd1a85096fb.tar.gz Doxygen-6c387a6be9128ced0b89f6fc75946cd1a85096fb.tar.bz2 |
fixes vhdl literal bug
-rw-r--r-- | vhdlparser/CharStream.cc | 4 | ||||
-rw-r--r-- | vhdlparser/CharStream.h | 204 | ||||
-rw-r--r-- | vhdlparser/ErrorHandler.h | 5 | ||||
-rw-r--r-- | vhdlparser/ParseException.cc | 6 | ||||
-rw-r--r-- | vhdlparser/ParseException.h | 4 | ||||
-rw-r--r-- | vhdlparser/Token.cc | 4 | ||||
-rw-r--r-- | vhdlparser/Token.h | 7 | ||||
-rw-r--r-- | vhdlparser/TokenManager.h | 14 | ||||
-rw-r--r-- | vhdlparser/TokenMgrError.cc | 9 | ||||
-rw-r--r-- | vhdlparser/TokenMgrError.h | 23 | ||||
-rw-r--r-- | vhdlparser/VhdlParser.cc | 613 | ||||
-rw-r--r-- | vhdlparser/VhdlParser.h | 374 | ||||
-rw-r--r-- | vhdlparser/VhdlParserConstants.h | 52 | ||||
-rw-r--r-- | vhdlparser/VhdlParserTokenManager.cc | 165 | ||||
-rw-r--r-- | vhdlparser/VhdlParserTokenManager.h | 27 | ||||
-rw-r--r-- | vhdlparser/vhdlparser.jj | 4 |
16 files changed, 740 insertions, 775 deletions
diff --git a/vhdlparser/CharStream.cc b/vhdlparser/CharStream.cc index 65179f5..8cc17c3 100644 --- a/vhdlparser/CharStream.cc +++ b/vhdlparser/CharStream.cc @@ -1,4 +1,4 @@ -/* Generated By:JavaCC: Do not edit this line. CharStream.cc Version 6.2 */ +/* Generated By:JavaCC: Do not edit this line. CharStream.cc Version 6.0 */ /* JavaCCOptions:STATIC=false,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ #include "CharStream.h" @@ -209,4 +209,4 @@ void CharStream::UpdateLineColumn(JAVACC_CHAR_TYPE c) { } } -/* JavaCC - OriginalChecksum=ade3c1b57a731a003629de593814ffa6 (do not edit this line) */ +/* JavaCC - OriginalChecksum=e709b9ee1adf0fcb6b1c5e1641f10348 (do not edit this line) */ diff --git a/vhdlparser/CharStream.h b/vhdlparser/CharStream.h index 2543ad1..784b584 100644 --- a/vhdlparser/CharStream.h +++ b/vhdlparser/CharStream.h @@ -1,4 +1,4 @@ -/* Generated By:JavaCC: Do not edit this line. CharStream.h Version 6.2 */ +/* Generated By:JavaCC: Do not edit this line. CharStream.h Version 6.0 */ /* JavaCCOptions:STATIC=false,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ #ifndef CHARSTREAM_H #define CHARSTREAM_H @@ -28,33 +28,17 @@ namespace parser { class CharStream { -public: - void setTabSize(int i) { tabSize = i; } - int getTabSize(int i) { return tabSize; } - private: - int getBufcolumn(int pos) { - if (trackLineColumn && pos>=0) { - return bufcolumn[pos]; - } else { - return -1; - } - } - int getBufline(int pos) { - if (trackLineColumn && pos>=0) { - return bufline[pos]; - } else { - return -1; - } - } public: - virtual int getColumn() { return getBufcolumn(bufpos); } - virtual int getLine() { return getBufline(bufpos); } - virtual int getEndColumn() { return getBufcolumn(bufpos); } - virtual int getEndLine() { return getBufline(bufpos); } - virtual int getBeginColumn() { return getBufcolumn(tokenBegin); } - virtual int getBeginLine() { return getBufline(tokenBegin); } - - virtual bool getTrackLineColumn() { return trackLineColumn; } + void setTabSize(int i) { tabSize = i; } + int getTabSize(int i) { return tabSize; } + virtual int getColumn() { return trackLineColumn ? bufcolumn[bufpos] : -1; } + virtual int getLine() { return trackLineColumn ? bufline[bufpos] : -1; } + virtual int getEndColumn() { return trackLineColumn ? bufcolumn[bufpos] : -1; } + virtual int getEndLine() { return trackLineColumn ? bufline[bufpos] : -1; } + virtual int getBeginColumn() { return trackLineColumn ? bufcolumn[tokenBegin] : -1; } + virtual int getBeginLine() { return trackLineColumn ? bufline[tokenBegin] : -1; } + + virtual bool getTrackLineColumn() { return trackLineColumn; } virtual void setTrackLineColumn(bool val) { trackLineColumn = val; } /** @@ -63,25 +47,25 @@ public: * (longer) token. So, they will be used again as the prefix of the next * token and it is the implemetation's responsibility to do this right. */ - virtual inline void backup(int amount) { - inBuf += amount; - bufpos -= amount; - if (bufpos < 0) { - bufpos += bufsize; - } +virtual inline void backup(int amount) { + inBuf += amount; + bufpos -= amount; + if (bufpos < 0) { + bufpos += bufsize; } +} /** * Returns the next character that marks the beginning of the next token. * All characters must remain in the buffer between two successive calls * to this method to implement backup correctly. */ - virtual inline JAVACC_CHAR_TYPE BeginToken() { - tokenBegin = -1; - JAVACC_CHAR_TYPE c = readChar(); - tokenBegin = bufpos; - return c; - } +virtual inline JAVACC_CHAR_TYPE BeginToken() { + tokenBegin = -1; + JAVACC_CHAR_TYPE c = readChar(); + tokenBegin = bufpos; + return c; +} /** @@ -89,30 +73,31 @@ public: * of selecting the input is the responsibility of the class * implementing this class. */ - virtual inline JAVACC_CHAR_TYPE readChar() { - if (inBuf > 0) { - --inBuf; - ++bufpos; - if (bufpos == bufsize) { - bufpos = 0; - } - return buffer[bufpos]; - } - +virtual inline JAVACC_CHAR_TYPE readChar() { + if (inBuf > 0) { + --inBuf; ++bufpos; - if (bufpos >= maxNextCharInd) { - FillBuff(); + if (bufpos == bufsize) { + bufpos = 0; } - JAVACC_CHAR_TYPE c = buffer[bufpos]; + return buffer[bufpos]; + } - if (trackLineColumn) { - UpdateLineColumn(c); - } + ++bufpos; + if (bufpos >= maxNextCharInd) { + FillBuff(); + } - return c; + JAVACC_CHAR_TYPE c = buffer[bufpos]; + + if (trackLineColumn) { + UpdateLineColumn(c); } + return c; +} + virtual void ExpandBuff(bool wrapAround); virtual void FillBuff(); @@ -127,7 +112,8 @@ public: if (bufpos >= tokenBegin) return JAVACC_STRING_TYPE(buffer + tokenBegin, bufpos - tokenBegin + 1); else - return JAVACC_STRING_TYPE(buffer + tokenBegin, bufsize - tokenBegin).append(buffer, bufpos + 1); + return JAVACC_STRING_TYPE(buffer + tokenBegin, bufsize - tokenBegin) + .append(buffer, bufpos + 1); } /** @@ -140,7 +126,8 @@ public: if ((bufpos + 1) >= len) { return JAVACC_STRING_TYPE(buffer + bufpos - len + 1, len); } - return JAVACC_STRING_TYPE(buffer + bufsize - (len - bufpos - 1), len - bufpos - 1).append(buffer, bufpos + 1); + return JAVACC_STRING_TYPE(buffer + bufsize - (len - bufpos - 1), len - bufpos - 1) + .append(buffer, bufpos + 1); } /** @@ -157,71 +144,74 @@ public: } bool endOfInput() { - return inBuf == 0 && bufpos + 1 >= maxNextCharInd && inputStream->endOfInput(); + return inBuf == 0 && bufpos + 1 >= maxNextCharInd && + inputStream->endOfInput(); } CharStream(const JAVACC_CHAR_TYPE *buf, int sz, int startline, int startcolumn, int buffersize) : - bufline(NULL), bufcolumn(NULL), buffer(NULL), bufpos(0), bufsize(0), - tokenBegin(0), column(0), line(0), prevCharIsCR(false), prevCharIsLF(false), - available(0), maxNextCharInd(0), inBuf(0), tabSize(1), trackLineColumn(true), - inputStream(NULL), deleteStream(false) { + bufline(NULL), bufcolumn(NULL), inputStream(NULL), deleteStream(false), + buffer(NULL), bufpos(0), bufsize(0), tokenBegin(0), column(0), line(0), + prevCharIsCR (false), prevCharIsLF (false), available(0), maxNextCharInd(0), + inBuf(0),tabSize(8), trackLineColumn(true) { ReInit(JAVACC_STRING_TYPE(buf, sz), startline, startcolumn, buffersize); } CharStream(const JAVACC_CHAR_TYPE *buf, int sz, int startline, int startcolumn) : - bufline(NULL), bufcolumn(NULL), buffer(NULL), bufpos(0), bufsize(0), - tokenBegin(0), column(0), line(0), prevCharIsCR(false), prevCharIsLF(false), - available(0), maxNextCharInd(0), inBuf(0), tabSize(1), trackLineColumn(true), - inputStream(NULL), deleteStream(false) { + bufline(NULL), bufcolumn(NULL), inputStream(NULL), deleteStream(false), + buffer(NULL), bufpos(0), bufsize(0), tokenBegin(0), column(0), line(0), + prevCharIsCR (false), prevCharIsLF (false), available(0), maxNextCharInd(0), + inBuf(0),tabSize(8), trackLineColumn(true) { ReInit(JAVACC_STRING_TYPE(buf, sz), startline, startcolumn, INITIAL_BUFFER_SIZE); } CharStream(const JAVACC_STRING_TYPE& str, int startline, int startcolumn, int buffersize) : - bufline(NULL), bufcolumn(NULL), buffer(NULL), bufpos(0), bufsize(0), - tokenBegin(0), column(0), line(0), prevCharIsCR(false), prevCharIsLF(false), - available(0), maxNextCharInd(0), inBuf(0), tabSize(1), trackLineColumn(true), - inputStream(NULL), deleteStream(false) { + bufline(NULL), bufcolumn(NULL), inputStream(NULL), deleteStream(false), + buffer(NULL), bufpos(0), bufsize(0), tokenBegin(0), column(0), line(0), + prevCharIsCR (false), prevCharIsLF (false), available(0), maxNextCharInd(0), + inBuf(0),tabSize(8), trackLineColumn(true) { ReInit(str, startline, startcolumn, buffersize); } CharStream(const JAVACC_STRING_TYPE& str, int startline, int startcolumn) : - bufline(NULL), bufcolumn(NULL), buffer(NULL), bufpos(0), bufsize(0), - tokenBegin(0), column(0), line(0), prevCharIsCR(false), prevCharIsLF(false), - available(0), maxNextCharInd(0), inBuf(0), tabSize(1), trackLineColumn(true), - inputStream(NULL), deleteStream(false) { + bufline(NULL), bufcolumn(NULL), inputStream(NULL), deleteStream(false), + buffer(NULL), bufpos(0), bufsize(0), tokenBegin(0), column(0), line(0), + prevCharIsCR (false), prevCharIsLF (false), available(0), maxNextCharInd(0), + inBuf(0) ,tabSize(8), trackLineColumn(true){ ReInit(str, startline, startcolumn, INITIAL_BUFFER_SIZE); } CharStream(ReaderStream *input_stream, int startline, int startcolumn, int buffersize) : - bufline(NULL), bufcolumn(NULL), buffer(NULL), bufpos(0), bufsize(0), - tokenBegin(0), column(0), line(0), prevCharIsCR(false), prevCharIsLF(false), - available(0), maxNextCharInd(0), inBuf(0), tabSize(1), trackLineColumn(true), - inputStream(NULL), deleteStream(false) { + bufline(NULL), bufcolumn(NULL), inputStream(NULL), deleteStream(false), + buffer(NULL), bufpos(0), bufsize(0), tokenBegin(0), column(0), line(0), + prevCharIsCR (false), prevCharIsLF (false), available(0), maxNextCharInd(0), + inBuf(0),tabSize(8), trackLineColumn(true) { ReInit(input_stream, startline, startcolumn, INITIAL_BUFFER_SIZE); } CharStream(ReaderStream *input_stream, int startline, int startcolumn) : - bufline(NULL), bufcolumn(NULL), buffer(NULL), bufpos(0), bufsize(0), - tokenBegin(0), column(0), line(0), prevCharIsCR(false), prevCharIsLF(false), - available(0), maxNextCharInd(0), inBuf(0), tabSize(1), trackLineColumn(true), - inputStream(NULL), deleteStream(false) { + bufline(NULL), bufcolumn(NULL), inputStream(NULL), deleteStream(false), + buffer(NULL), bufpos(0), bufsize(0), tokenBegin(0), column(0), line(0), + prevCharIsCR (false), prevCharIsLF (false), available(0), maxNextCharInd(0), + inBuf(0),tabSize(8), trackLineColumn(true) { ReInit(input_stream, startline, startcolumn, INITIAL_BUFFER_SIZE); } CharStream(ReaderStream *input_stream) : - bufline(NULL), bufcolumn(NULL), buffer(NULL), bufpos(0), bufsize(0), - tokenBegin(0), column(0), line(0), prevCharIsCR(false), prevCharIsLF(false), - available(0), maxNextCharInd(0), inBuf(0), tabSize(1), trackLineColumn(true), - inputStream(NULL), deleteStream(false) { + bufline(NULL), bufcolumn(NULL), inputStream(NULL), deleteStream(false), + buffer(NULL), bufpos(0), bufsize(0), tokenBegin(0), column(0), line(0), + prevCharIsCR (false), prevCharIsLF (false), available(0), maxNextCharInd(0), + inBuf(0),tabSize(8), trackLineColumn(true) { ReInit(input_stream, 1, 1, INITIAL_BUFFER_SIZE); } - virtual void ReInit(ReaderStream *input_stream, int startline, int startcolumn, int buffersize); + virtual void ReInit(ReaderStream *input_stream, int startline, int startcolumn, + int buffersize); - virtual void ReInit(ReaderStream *input_stream, int startline, int startcolumn) { + virtual void ReInit(ReaderStream *input_stream, int startline, + int startcolumn) { ReInit(input_stream, startline, startcolumn, INITIAL_BUFFER_SIZE); } @@ -242,26 +232,26 @@ public: protected: virtual void UpdateLineColumn(JAVACC_CHAR_TYPE c); - int* bufline; - int* bufcolumn; - JAVACC_CHAR_TYPE* buffer; - int bufpos; - int bufsize; - int tokenBegin; - int column; - int line; - bool prevCharIsCR; - bool prevCharIsLF; - int available; - int maxNextCharInd; - int inBuf; - int tabSize; - bool trackLineColumn; - ReaderStream* inputStream; - bool deleteStream; + int *bufline; + int *bufcolumn; + ReaderStream *inputStream; + bool deleteStream; + JAVACC_CHAR_TYPE * buffer; + int bufpos; + int bufsize; + int tokenBegin; + int column; + int line; + bool prevCharIsCR ; + bool prevCharIsLF ; + int available; + int maxNextCharInd; + int inBuf ; + int tabSize ; + bool trackLineColumn; }; } } #endif -/* JavaCC - OriginalChecksum=3f0e693d1617236429891c8c95713d73 (do not edit this line) */ +/* JavaCC - OriginalChecksum=5eaf75ef6a2c7859369c80cf6fd037e0 (do not edit this line) */ diff --git a/vhdlparser/ErrorHandler.h b/vhdlparser/ErrorHandler.h index 9f7dc07..55286b4 100644 --- a/vhdlparser/ErrorHandler.h +++ b/vhdlparser/ErrorHandler.h @@ -1,8 +1,7 @@ -/* Generated By:JavaCC: Do not edit this line. ErrorHandler.h Version 6.2 */ +/* Generated By:JavaCC: Do not edit this line. ErrorHandler.h Version 6.0 */ /* JavaCCOptions:STATIC=false,SUPPORT_CLASS_VISIBILITY_PUBLIC=true,BUILD_PARSER=true,BUILD_TOKEN_MANAGER=true */ #ifndef ERRORHANDLER_H #define ERRORHANDLER_H -#include <stdio.h> #include <string> #include "JavaCC.h" #include "Token.h" @@ -76,4 +75,4 @@ JAVACC_SIMPLE_STRING addUnicodeEscapes(JAVACC_STRING_TYPE str); } #endif -/* JavaCC - OriginalChecksum=c18f1105ba178be8e21cc9f279f94496 (do not edit this line) */ +/* JavaCC - OriginalChecksum=685d19cb4cd943b60089f599e45f23ad (do not edit this line) */ diff --git a/vhdlparser/ParseException.cc b/vhdlparser/ParseException.cc index 6ef9738..31ee7a3 100644 --- a/vhdlparser/ParseException.cc +++ b/vhdlparser/ParseException.cc @@ -1,4 +1,4 @@ -/* Generated By:JavaCC: Do not edit this line. ParseException.cc Version 6.2 */ +/* Generated By:JavaCC: Do not edit this line. ParseException.cc Version 6.0 */ /* JavaCCOptions:STATIC=false,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ #include "ParseException.h" @@ -141,6 +141,8 @@ namespace parser { for (int i = 0; i < str.length(); i++) { switch (str.charAt(i)) { + case 0 : + continue; case '\b': retval.append("\\b"); continue; @@ -181,4 +183,4 @@ namespace parser { } } -/* JavaCC - OriginalChecksum=9f6af8fd72f5fe3e4210cf02acbd8387 (do not edit this line) */ +/* JavaCC - OriginalChecksum=99d488e13335cf377284c90700f070ed (do not edit this line) */ diff --git a/vhdlparser/ParseException.h b/vhdlparser/ParseException.h index c36613f..1f3a3dc 100644 --- a/vhdlparser/ParseException.h +++ b/vhdlparser/ParseException.h @@ -1,4 +1,4 @@ -/* Generated By:JavaCC: Do not edit this line. ParseException.h Version 6.2 */ +/* Generated By:JavaCC: Do not edit this line. ParseException.h Version 6.0 */ /* JavaCCOptions:STATIC=false,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ #ifndef _PARSE_EXCEPTION_H #define _PARSE_EXCEPTION_H @@ -96,4 +96,4 @@ class ParseException { } } #endif -/* JavaCC - OriginalChecksum=bd87c2fc11a4306bd2c2482fd1025b7c (do not edit this line) */ +/* JavaCC - OriginalChecksum=8c47c56fc2030f05b43e20cae6ca5d66 (do not edit this line) */ diff --git a/vhdlparser/Token.cc b/vhdlparser/Token.cc index 735091d..62a8169 100644 --- a/vhdlparser/Token.cc +++ b/vhdlparser/Token.cc @@ -1,4 +1,4 @@ -/* Generated By:JavaCC: Do not edit this line. Token.cc Version 6.2 */ +/* Generated By:JavaCC: Do not edit this line. Token.cc Version 6.0 */ /* JavaCCOptions:STATIC=false,SUPPORT_CLASS_VISIBILITY_PUBLIC=true,TOKEN_INCLUDES=,TOKEN_EXTENDS= */ #include "Token.h" @@ -89,4 +89,4 @@ namespace parser { } } -/* JavaCC - OriginalChecksum=dcb0f64486aa6455ae5af05d6bb539ec (do not edit this line) */ +/* JavaCC - OriginalChecksum=9db9ca693072c4c37bb7cc933c0c5e35 (do not edit this line) */ diff --git a/vhdlparser/Token.h b/vhdlparser/Token.h index 040899e..5fce69f 100644 --- a/vhdlparser/Token.h +++ b/vhdlparser/Token.h @@ -1,4 +1,4 @@ -/* Generated By:JavaCC: Do not edit this line. Token.h Version 6.2 */ +/* Generated By:JavaCC: Do not edit this line. Token.h Version 6.0 */ /* JavaCCOptions:STATIC=false,SUPPORT_CLASS_VISIBILITY_PUBLIC=true,TOKEN_INCLUDES=,TOKEN_EXTENDS= */ #ifndef TOKEN_H #define TOKEN_H @@ -86,13 +86,12 @@ class Token */ Token(int kind, JAVACC_STRING_TYPE image); - virtual ~Token(); - /** * Returns the image. */ JAVACC_STRING_TYPE toString(); + public: virtual ~Token(); /** * Returns a new Token void *, by default. However, if you want, you @@ -114,4 +113,4 @@ class Token } } #endif -/* JavaCC - OriginalChecksum=4748c3d6443aa3445d3c95ab54f14c2a (do not edit this line) */ +/* JavaCC - OriginalChecksum=2f5eb1c937adc983dfa2008c4fe383a7 (do not edit this line) */ diff --git a/vhdlparser/TokenManager.h b/vhdlparser/TokenManager.h index 0c2caa6..df371d9 100644 --- a/vhdlparser/TokenManager.h +++ b/vhdlparser/TokenManager.h @@ -1,12 +1,10 @@ -/* Generated By:JavaCC: Do not edit this line. TokenManager.h Version 6.2 */ +/* Generated By:JavaCC: Do not edit this line. TokenManager.h Version 6.0 */ /* JavaCCOptions:STATIC=false,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ #ifndef TOKENMANAGER_H #define TOKENMANAGER_H -#include <iostream> #include "JavaCC.h" #include "Token.h" -using namespace std; namespace vhdl { namespace parser { @@ -21,10 +19,10 @@ public: /** This gets the next token from the input stream. * A token of kind 0 (<EOF>) should be returned on EOF. */ - virtual ~TokenManager() { } - virtual Token *getNextToken() = 0; - virtual void lexicalError() { - cerr << "Lexical error encountered." << endl; + public: virtual Token *getNextToken() = 0; + public: virtual ~TokenManager() { } + public: virtual void lexicalError() { + fprintf(stderr, "Lexical error encountered.\n"); } }; @@ -32,4 +30,4 @@ public: } } #endif -/* JavaCC - OriginalChecksum=918e2eba53e028d6c4142283ce3f498f (do not edit this line) */ +/* JavaCC - OriginalChecksum=9e6cfa00cefe7e342b80eb59f1a114ff (do not edit this line) */ diff --git a/vhdlparser/TokenMgrError.cc b/vhdlparser/TokenMgrError.cc index 74908f0..9093e6e 100644 --- a/vhdlparser/TokenMgrError.cc +++ b/vhdlparser/TokenMgrError.cc @@ -1,4 +1,4 @@ -/* Generated By:JavaCC: Do not edit this line. TokenMgrError.cc Version 6.2 */ +/* Generated By:JavaCC: Do not edit this line. TokenMgrError.cc Version 6.0 */ /* JavaCCOptions:STATIC=false,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ #include "TokenMgrError.h" @@ -64,7 +64,7 @@ namespace parser { // i < 16 - guaranteed char hexChar(int i) { if (i < 10) { - return i + '0'; + return i - '0'; } return 'a' + (i - 10); } @@ -79,6 +79,9 @@ JAVACC_SIMPLE_STRING addUnicodeEscapes(JAVACC_STRING_TYPE str) { JAVACC_CHAR_TYPE ch = str[i]; switch (ch) { + case 0 : + retval += EMPTY[0]; + continue; case '\b': retval.append("\\b"); continue; @@ -115,4 +118,4 @@ JAVACC_SIMPLE_STRING addUnicodeEscapes(JAVACC_STRING_TYPE str) { } } -/* JavaCC - OriginalChecksum=72f292bc267bd0602e63291bf864f942 (do not edit this line) */ +/* JavaCC - OriginalChecksum=2bf63f131c8e60fd30c70d0b4f660016 (do not edit this line) */ diff --git a/vhdlparser/TokenMgrError.h b/vhdlparser/TokenMgrError.h index abb305d..2702b29 100644 --- a/vhdlparser/TokenMgrError.h +++ b/vhdlparser/TokenMgrError.h @@ -1,4 +1,4 @@ -/* Generated By:JavaCC: Do not edit this line. TokenMgrError.h Version 6.2 */ +/* Generated By:JavaCC: Do not edit this line. TokenMgrError.h Version 6.0 */ /* JavaCCOptions:STATIC=false,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ #ifndef _TOKENMGRERROR_H #define _TOKENMGRERROR_H @@ -8,7 +8,7 @@ namespace vhdl { namespace parser { -enum LexerErrors { + enum LexerErrors { /** * Lexical error occurred. */ @@ -28,10 +28,11 @@ enum LexerErrors { * Detected (and bailed out of) an infinite loop in the token manager. */ LOOP_DETECTED = 3, -}; + }; -class TokenMgrError { -public: +class TokenMgrError +{ + public: /* * Ordinals for various reasons why an Error of this type can be thrown. */ @@ -56,8 +57,7 @@ public: */ JAVACC_STRING_TYPE LexicalError(bool EOFSeen, int lexState, int errorLine, int errorColumn, JAVACC_STRING_TYPE errorAfter, JAVACC_CHAR_TYPE curChar); -private: - JAVACC_STRING_TYPE message; + private: JAVACC_STRING_TYPE message; /** * You can also modify the body of this method to customize your error messages. @@ -68,7 +68,6 @@ private: * * from this method for such cases in the release version of your parser. */ -public: JAVACC_STRING_TYPE getMessage() ; /* @@ -76,16 +75,16 @@ public: */ /** No arg constructor. */ - TokenMgrError() ; + public: TokenMgrError() ; /** Constructor with message and reason. */ - TokenMgrError(JAVACC_STRING_TYPE message, int reason) ; + public: TokenMgrError(JAVACC_STRING_TYPE message, int reason) ; /** Full Constructor. */ - TokenMgrError(bool EOFSeen, int lexState, int errorLine, int errorColumn, JAVACC_STRING_TYPE errorAfter, JAVACC_CHAR_TYPE curChar, int reason) ; + public: TokenMgrError(bool EOFSeen, int lexState, int errorLine, int errorColumn, JAVACC_STRING_TYPE errorAfter, JAVACC_CHAR_TYPE curChar, int reason) ; }; } } #endif -/* JavaCC - OriginalChecksum=c22a1b25630ec91deb47dcba22b6b39d (do not edit this line) */ +/* JavaCC - OriginalChecksum=c7d825cb4d037b031ae43569d383f738 (do not edit this line) */ diff --git a/vhdlparser/VhdlParser.cc b/vhdlparser/VhdlParser.cc index df9bbe5..a3de14a 100644 --- a/vhdlparser/VhdlParser.cc +++ b/vhdlparser/VhdlParser.cc @@ -1,6 +1,5 @@ /* VhdlParser.cc */ -#include "VhdlParser.h" -#include "TokenMgrError.h" +#include "./VhdlParser.h" namespace vhdl { namespace parser { unsigned int jj_la1_0[] = { @@ -14,7 +13,7 @@ namespace parser { unsigned int jj_la1_4[] = { 0x0,0x0,0x60000,0x30,0x40,0x100,0x0,0x0,0x0,0x0,0x40000,0x0,0x40001,0x0,0x0,0x0,0x0,0x40,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x1,0x0,0x0,0x40001,0x0,0x0,0x0,0x0,0x10000000,0x200,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40000,0x0,0x0,0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x20000,0x40,0x0,0x0,0x40000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40000,0x40000,0x40000,0x40000,0x40000,0x0,0x40,0x0,0x0,0x0,0x0,0x0,0x4,0x40001,0x0,0x0,0x40000,0x1,0x0,0x0,0x40000,0x40,0x0,0x40,0x0,0x0,0x0,0x0,0x40,0x40031,0x0,0x1,0x0,0x0,0x0,0x0,0x200,0x0,0x0,0x0,0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x4,0x0,0x40000008,0x40000,0x40,0x1,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40000,0x0,0x0,0x0,0x0,0x40000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40000,0x1,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x40000,0x1,0x0,0x0,0x0,0x40001,0x1,0x0,0x40000,0xfc00,0xfc00,0x0,0x0,0x0,0x40031,0x1,0x0,0x40,0x40,0x0,0x0,0x0,0x30,0x0,0x40001,0x0,0x80,0x0,0x40,0x40000,0x40,0x40000,0x0,0x30,0x0,0x0,0x0,0x200,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x1,0x0,0x40001,0x0,0x40001,0x0,0x1,0x0,0x40,0x40,0x40001,0x0,0x80,0x0,0x0,0x0,0x0,0x40,0x40031,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40001,0x0,0xa0000000,0x20000000,0x0,0x1,0x40001,0x0,0x0,0x0,0x0,0x40031,0x0,0x8000000,0x40000,0x8000000,0x0,0x8000000,0x0,0x240,0x240,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x20000,0x0,0x0,0x1,0x0,}; unsigned int jj_la1_5[] = { -0x1420,0x0,0x1c0,0x0,0x0,0x0,0x2,0x3c0,0x0,0x0,0x1c0,0x0,0x80001c0,0x0,0x0,0x0,0x180,0x0,0x180,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x180,0x80001c0,0x180,0x0,0x180,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x180,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8000000,0x0,0x0,0x1c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0x0,0x0,0x0,0x8000000,0x8000000,0x2,0x0,0x0,0x3c0,0x3c0,0x1c0,0x1c0,0x3c0,0x380,0x0,0x180,0x180,0x0,0x0,0x0,0x0,0x817e0,0x0,0x0,0x1e0,0x0,0x180,0x0,0x3c0,0x0,0x180,0x0,0x180,0x0,0x0,0x180,0x0,0x817e0,0x0,0x0,0x180,0x180,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x180,0x0,0x180,0x0,0x0,0x0,0x1c0,0x0,0x0,0x0,0x180,0x180,0x0,0x180,0x1420,0x0,0x0,0x0,0x0,0x1c0,0x0,0x0,0x0,0x0,0x1c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x180,0x1c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x180,0x0,0x1c0,0x0,0x0,0x0,0x180,0x1c0,0x0,0x180,0x1c0,0x0,0x0,0x180,0x0,0x180,0x817e0,0x0,0x0,0x0,0x0,0x180,0x0,0x0,0x0,0x0,0x1c0,0x0,0x0,0x0,0x0,0x1c0,0x0,0x1c0,0x0,0x0,0x0,0x1c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0x240,0x1c0,0x0,0x0,0x0,0x0,0x0,0x1c0,0x0,0x0,0x180,0x0,0x0,0x0,0x0,0x817e0,0x0,0x180,0x0,0x0,0x0,0x0,0x180,0x0,0x0,0x0,0x0,0x180,0x0,0x0,0x0,0x0,0x0,0x180,0x0,0x80001c0,0x0,0x1,0x0,0x1,0x0,0x1c0,0x0,0x0,0x0,0x0,0x817e0,0x0,0x0,0x1c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x180,0x0,0x0,0x0,0x180,}; +0x1420,0x0,0x1c0,0x0,0x0,0x0,0x2,0x3c0,0x0,0x0,0x1c0,0x0,0x200001c0,0x0,0x0,0x0,0x180,0x0,0x180,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x180,0x200001c0,0x180,0x0,0x180,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x180,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000000,0x0,0x0,0x1c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0x0,0x0,0x0,0x20000000,0x20000000,0x2,0x0,0x0,0x3c0,0x3c0,0x1c0,0x1c0,0x3c0,0x380,0x0,0x180,0x180,0x0,0x0,0x0,0x0,0x1017e0,0x0,0x0,0x1e0,0x0,0x180,0x0,0x3c0,0x0,0x180,0x0,0x180,0x0,0x0,0x180,0x0,0x1017e0,0x0,0x0,0x180,0x180,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x180,0x0,0x180,0x0,0x0,0x0,0x1c0,0x0,0x0,0x0,0x180,0x180,0x0,0x180,0x1420,0x0,0x0,0x0,0x0,0x1c0,0x0,0x0,0x0,0x0,0x1c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x180,0x1c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x180,0x0,0x1c0,0x0,0x0,0x0,0x180,0x1c0,0x0,0x180,0x1c0,0x0,0x0,0x180,0x0,0x180,0x1017e0,0x0,0x0,0x0,0x0,0x180,0x0,0x0,0x0,0x0,0x1c0,0x0,0x0,0x0,0x0,0x1c0,0x0,0x1c0,0x0,0x0,0x0,0x1c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0x240,0x1c0,0x0,0x0,0x0,0x0,0x0,0x1c0,0x0,0x0,0x180,0x0,0x0,0x0,0x0,0x1017e0,0x0,0x180,0x0,0x0,0x0,0x0,0x180,0x0,0x0,0x0,0x0,0x180,0x0,0x0,0x0,0x0,0x0,0x180,0x0,0x200001c0,0x0,0x1,0x0,0x1,0x0,0x1c0,0x0,0x0,0x0,0x0,0x1017e0,0x0,0x0,0x1c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x180,0x0,0x0,0x0,0x180,}; /** Constructor with user supplied TokenManager. */ @@ -62,7 +61,7 @@ return tok->image.c_str(); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::access_type_definition() {Token *tok=0;QCString str,str1;if (!hasError) { @@ -76,7 +75,7 @@ QCString VhdlParser::access_type_definition() {Token *tok=0;QCString str,str1;if str=tok->image.c_str(); return str+str1; assert(false); -} + } QCString VhdlParser::actual_designator() {QCString str;Token *t=0; @@ -118,7 +117,7 @@ return str; } } assert(false); -} + } QCString VhdlParser::actual_parameter_part() {QCString s;if (!hasError) { @@ -128,7 +127,7 @@ QCString VhdlParser::actual_parameter_part() {QCString s;if (!hasError) { return s; assert(false); -} + } QCString VhdlParser::actual_part() {QCString s,s1; @@ -187,7 +186,7 @@ s+="(";s+=s1+")";return s; } } assert(false); -} + } QCString VhdlParser::adding_operator() { @@ -231,7 +230,7 @@ return "&"; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::aggregate() {QCString s,s1,s2;if (!hasError) { @@ -276,7 +275,7 @@ s+=","+s1; return "("+s+")"; assert(false); -} + } QCString VhdlParser::alias_declaration() {QCString s,s1,s2;if (!hasError) { @@ -358,7 +357,7 @@ addVhdlType(s2.data(),getLine(ALIAS_T),Entry::VARIABLE_SEC,VhdlDocGen::ALIAS,0,s return s2+" "+s+";"; assert(false); -} + } QCString VhdlParser::alias_designator() {Token *tok=0;QCString s; @@ -403,7 +402,7 @@ return s; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } void VhdlParser::allocator() { @@ -435,7 +434,7 @@ void VhdlParser::allocator() { errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } } -} + } void VhdlParser::architecture_body() {QCString s,s1;if (!hasError) { @@ -528,7 +527,7 @@ error_skipto(BEGIN_T); } lastEntity=0;lastCompound=0; genLabels.resize(0); -} + } void VhdlParser::architecture_declarative_part() {if (!hasError) { @@ -568,7 +567,7 @@ void VhdlParser::architecture_declarative_part() {if (!hasError) { end_label_2: ; } -} + } void VhdlParser::architecture_statement_part() {if (!hasError) { @@ -601,7 +600,7 @@ void VhdlParser::architecture_statement_part() {if (!hasError) { end_label_3: ; } -} + } QCString VhdlParser::array_type_definition() {QCString s; @@ -634,7 +633,7 @@ return s; } } assert(false); -} + } QCString VhdlParser::assertion() {QCString s,s1,s2;Token *t=0;Token *t1=0;if (!hasError) { @@ -689,7 +688,7 @@ s.prepend("assert "); if(t1) s2.prepend(" report "); return s+s1+s2; assert(false); -} + } QCString VhdlParser::assertion_statement() {QCString s,s1,s2;Token *t=0;if (!hasError) { @@ -724,7 +723,7 @@ QCString VhdlParser::assertion_statement() {QCString s,s1,s2;Token *t=0;if (!has if(t) s+=":"; return s+s1+";"; assert(false); -} + } QCString VhdlParser::association_element() {QCString s,s1;if (!hasError) { @@ -749,7 +748,7 @@ QCString VhdlParser::association_element() {QCString s,s1;if (!hasError) { return s+" => "+s1; assert(false); -} + } QCString VhdlParser::association_list() {QCString s,s1;if (!hasError) { @@ -786,7 +785,7 @@ s+=","+s1; return s; assert(false); -} + } QCString VhdlParser::attribute_declaration() {QCString s,s1;if (!hasError) { @@ -813,7 +812,7 @@ QCString VhdlParser::attribute_declaration() {QCString s,s1;if (!hasError) { addVhdlType(s.data(),getLine(ATTRIBUTE_T),Entry::VARIABLE_SEC,VhdlDocGen::ATTRIBUTE,0,s1.data(),Public); return " attribute "+s+":"+s1+";"; assert(false); -} + } QCString VhdlParser::attribute_designator() {QCString s;Token *tok=0; @@ -847,7 +846,7 @@ return tok->image.c_str(); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::attribute_name() {QCString s,s1;if (!hasError) { @@ -896,7 +895,7 @@ s+"("+s1+")"; return s; assert(false); -} + } QCString VhdlParser::attribute_specification() {QCString s,s1,s2;if (!hasError) { @@ -932,7 +931,7 @@ QCString t= s1+" is "+s2; addVhdlType(s.data(),getLine(ATTRIBUTE_T),Entry::VARIABLE_SEC,VhdlDocGen::ATTRIBUTE,0,t.data(),Public); return " attribute "+s+" of "+s1+ " is "+s2+";"; assert(false); -} + } QCString VhdlParser::base() {Token *tok=0;if (!hasError) { @@ -942,7 +941,7 @@ QCString VhdlParser::base() {Token *tok=0;if (!hasError) { return tok->image.c_str(); assert(false); -} + } QCString VhdlParser::base_specifier() {Token *tok=0;if (!hasError) { @@ -952,7 +951,7 @@ QCString VhdlParser::base_specifier() {Token *tok=0;if (!hasError) { return tok->image.c_str(); assert(false); -} + } QCString VhdlParser::base_unit_declaration() {QCString s;if (!hasError) { @@ -962,7 +961,7 @@ QCString VhdlParser::base_unit_declaration() {QCString s;if (!hasError) { return s; assert(false); -} + } QCString VhdlParser::based_integer() {Token *tok=0;if (!hasError) { @@ -972,7 +971,7 @@ QCString VhdlParser::based_integer() {Token *tok=0;if (!hasError) { return tok->image.c_str(); assert(false); -} + } QCString VhdlParser::based_literal() {Token *tok=0;if (!hasError) { @@ -982,7 +981,7 @@ QCString VhdlParser::based_literal() {Token *tok=0;if (!hasError) { return tok->image.c_str(); assert(false); -} + } QCString VhdlParser::basic_identifier() {Token *tok=0;if (!hasError) { @@ -992,7 +991,7 @@ QCString VhdlParser::basic_identifier() {Token *tok=0;if (!hasError) { return tok->image.c_str(); assert(false); -} + } void VhdlParser::binding_indication() {if (!hasError) { @@ -1045,7 +1044,7 @@ void VhdlParser::binding_indication() {if (!hasError) { } } -} + } QCString VhdlParser::bit_string_literal() {Token *tok=0;if (!hasError) { @@ -1055,7 +1054,7 @@ QCString VhdlParser::bit_string_literal() {Token *tok=0;if (!hasError) { return tok->image.c_str(); assert(false); -} + } QCString VhdlParser::bit_value() {Token *tok=0;if (!hasError) { @@ -1065,7 +1064,7 @@ QCString VhdlParser::bit_value() {Token *tok=0;if (!hasError) { return tok->image.c_str(); assert(false); -} + } void VhdlParser::block_configuration() {if (!hasError) { @@ -1127,7 +1126,7 @@ void VhdlParser::block_configuration() {if (!hasError) { jj_consume_token(SEMI_T); } -} + } void VhdlParser::block_declarative_item() { @@ -1261,7 +1260,7 @@ void VhdlParser::block_declarative_item() { } } } -} + } void VhdlParser::block_declarative_part() {if (!hasError) { @@ -1301,7 +1300,7 @@ void VhdlParser::block_declarative_part() {if (!hasError) { end_label_7: ; } -} + } void VhdlParser::block_header() {if (!hasError) { @@ -1369,7 +1368,7 @@ void VhdlParser::block_header() {if (!hasError) { } } -} + } void VhdlParser::block_specification() {if (!hasError) { @@ -1400,7 +1399,7 @@ void VhdlParser::block_specification() {if (!hasError) { } } -} + } void VhdlParser::block_statement() {QCString s;if (!hasError) { @@ -1503,7 +1502,7 @@ pushLabel(genLabels,s); } genLabels=popLabel(genLabels); -} + } void VhdlParser::block_statement_part() {if (!hasError) { @@ -1536,7 +1535,7 @@ void VhdlParser::block_statement_part() {if (!hasError) { end_label_8: ; } -} + } void VhdlParser::case_statement() {QCString s;if (!hasError) { @@ -1630,7 +1629,7 @@ QCString ca="case "+s; FlowChart::moveToPrevLevel(); FlowChart::addFlowChart(FlowChart::END_CASE,"end case",0); -} + } void VhdlParser::case_statement_alternative() {QCString s;if (!hasError) { @@ -1657,7 +1656,7 @@ QCString t="when "; } FlowChart::moveToPrevLevel(); -} + } QCString VhdlParser::character_literal() {Token *tok=0;if (!hasError) { @@ -1667,7 +1666,7 @@ QCString VhdlParser::character_literal() {Token *tok=0;if (!hasError) { return tok->image.c_str(); assert(false); -} + } QCString VhdlParser::choice() {QCString s; @@ -1718,7 +1717,7 @@ return " others "; } } assert(false); -} + } QCString VhdlParser::choices() {QCString s,s1;if (!hasError) { @@ -1755,7 +1754,7 @@ s+="|";s+=s1; return s; assert(false); -} + } void VhdlParser::component_configuration() {if (!hasError) { @@ -1816,7 +1815,7 @@ void VhdlParser::component_configuration() {if (!hasError) { jj_consume_token(SEMI_T); } -} + } void VhdlParser::component_declaration() {QCString s;if (!hasError) { @@ -1910,7 +1909,7 @@ addVhdlType(s.data(),getLine(COMPONENT_T),Entry::VARIABLE_SEC,VhdlDocGen::COMPON jj_consume_token(SEMI_T); } -} + } void VhdlParser::component_instantiation_statement() {QCString s,s1;if (!hasError) { @@ -1966,7 +1965,7 @@ QCString s3; jj_consume_token(SEMI_T); } -} + } void VhdlParser::component_specification() {if (!hasError) { @@ -1982,7 +1981,7 @@ void VhdlParser::component_specification() {if (!hasError) { name(); } -} + } QCString VhdlParser::composite_type_definition() {QCString s,s1; @@ -2015,7 +2014,7 @@ return s+"#"; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } void VhdlParser::concurrent_assertion_statement() {if (!hasError) { @@ -2057,7 +2056,7 @@ void VhdlParser::concurrent_assertion_statement() {if (!hasError) { jj_consume_token(SEMI_T); } -} + } void VhdlParser::concurrent_procedure_call_statement() {if (!hasError) { @@ -2099,7 +2098,7 @@ void VhdlParser::concurrent_procedure_call_statement() {if (!hasError) { jj_consume_token(SEMI_T); } -} + } void VhdlParser::concurrent_signal_assignment_statement() {if (!hasError) { @@ -2156,7 +2155,7 @@ void VhdlParser::concurrent_signal_assignment_statement() {if (!hasError) { } } -} + } void VhdlParser::concurrent_statement() { @@ -2223,7 +2222,7 @@ void VhdlParser::concurrent_statement() { } } } -} + } QCString VhdlParser::condition() {QCString s;if (!hasError) { @@ -2233,7 +2232,7 @@ QCString VhdlParser::condition() {QCString s;if (!hasError) { return s; assert(false); -} + } QCString VhdlParser::condition_clause() {QCString s;if (!hasError) { @@ -2247,7 +2246,7 @@ QCString VhdlParser::condition_clause() {QCString s;if (!hasError) { return " until "+s; assert(false); -} + } void VhdlParser::conditional_signal_assignment() {if (!hasError) { @@ -2271,7 +2270,7 @@ void VhdlParser::conditional_signal_assignment() {if (!hasError) { jj_consume_token(SEMI_T); } -} + } void VhdlParser::conditional_waveforms() {if (!hasError) { @@ -2325,7 +2324,7 @@ void VhdlParser::conditional_waveforms() {if (!hasError) { } } -} + } void VhdlParser::configuration_declaration() {QCString s,s1;if (!hasError) { @@ -2404,7 +2403,7 @@ confName=s+"::"+s1; } genLabels.resize(0); confName=""; -} + } void VhdlParser::configuration_declarative_item() { @@ -2435,7 +2434,7 @@ void VhdlParser::configuration_declarative_item() { jj_consume_token(-1); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } -} + } void VhdlParser::configuration_declarative_part() {if (!hasError) { @@ -2460,7 +2459,7 @@ void VhdlParser::configuration_declarative_part() {if (!hasError) { end_label_12: ; } -} + } void VhdlParser::configuration_item() { @@ -2484,7 +2483,7 @@ void VhdlParser::configuration_item() { errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } } -} + } void VhdlParser::configuration_specification() {if (!hasError) { @@ -2504,7 +2503,7 @@ void VhdlParser::configuration_specification() {if (!hasError) { jj_consume_token(SEMI_T); } -} + } QCString VhdlParser::constant_declaration() {QCString s,s1,s2;Token *t=0;if (!hasError) { @@ -2554,7 +2553,7 @@ if(t) it.prepend("constant "); return it; assert(false); -} + } QCString VhdlParser::constraint_array_definition() {QCString s,s1;if (!hasError) { @@ -2576,7 +2575,7 @@ QCString VhdlParser::constraint_array_definition() {QCString s,s1;if (!hasError) return s+" "+s1; assert(false); -} + } void VhdlParser::context_clause() {if (!hasError) { @@ -2600,7 +2599,7 @@ void VhdlParser::context_clause() {if (!hasError) { end_label_13: ; } -} + } QCString VhdlParser::constraint() {QCString s; @@ -2627,7 +2626,7 @@ return s; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } void VhdlParser::context_item() { @@ -2651,7 +2650,7 @@ void VhdlParser::context_item() { jj_consume_token(-1); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } -} + } QCString VhdlParser::decimal_literal() {Token *tok=0;if (!hasError) { @@ -2661,7 +2660,7 @@ QCString VhdlParser::decimal_literal() {Token *tok=0;if (!hasError) { return tok->image.c_str(); assert(false); -} + } QCString VhdlParser::delay_mechanism() {QCString s; @@ -2718,7 +2717,7 @@ return s+" inertial "; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } void VhdlParser::design_file() { @@ -2773,7 +2772,7 @@ void VhdlParser::design_file() { jj_consume_token(-1); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } -} + } void VhdlParser::design_unit() {if (!hasError) { @@ -2785,7 +2784,7 @@ void VhdlParser::design_unit() {if (!hasError) { library_unit(); } -} + } QCString VhdlParser::designator() {QCString s; @@ -2819,7 +2818,7 @@ return s; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::direction() {Token *tok=0; @@ -2852,7 +2851,7 @@ return tok->image.c_str(); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } void VhdlParser::disconnection_specification() {if (!hasError) { @@ -2876,7 +2875,7 @@ void VhdlParser::disconnection_specification() {if (!hasError) { jj_consume_token(SEMI_T); } -} + } void VhdlParser::guarded_signal_specificatio() {if (!hasError) { @@ -2892,7 +2891,7 @@ void VhdlParser::guarded_signal_specificatio() {if (!hasError) { name(); } -} + } QCString VhdlParser::discrete_range() {QCString s; @@ -2919,7 +2918,7 @@ return s; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::element_association() {QCString s,s1;if (!hasError) { @@ -2946,7 +2945,7 @@ if(!s.isEmpty()) return s+"=>"+s1; return s1; assert(false); -} + } QCString VhdlParser::element_declaration() {QCString s,s1;if (!hasError) { @@ -2970,7 +2969,7 @@ addVhdlType(s.data(),getLine(),Entry::VARIABLE_SEC,VhdlDocGen::RECORD,0,s1.data( //addVhdlType(s.data(),getLine(),Entry::VARIABLE_SEC,VhdlDocGen::VFILE,0,s1.data(),Public); return s+":"+s1; assert(false); -} + } QCString VhdlParser::entity_aspect() {Token *tok=0;QCString s,s1; @@ -3049,7 +3048,7 @@ return tok->image.c_str(); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::entity_class() { @@ -3247,7 +3246,7 @@ return "file"; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::entity_class_entry() {QCString s;if (!hasError) { @@ -3276,7 +3275,7 @@ s+="<>"; return s; assert(false); -} + } QCString VhdlParser::entity_class_entry_list() {QCString s,s1,s2;if (!hasError) { @@ -3320,7 +3319,7 @@ s2+=",";s2+=s; return s1+s2; assert(false); -} + } void VhdlParser::entity_declaration() {QCString s;if (!hasError) { @@ -3411,7 +3410,7 @@ lastEntity=current; } lastEntity=0;lastCompound=0; genLabels.resize(0); -} + } void VhdlParser::entity_declarative_item() { @@ -3556,7 +3555,7 @@ void VhdlParser::entity_declarative_item() { } } } -} + } void VhdlParser::entity_declarative_part() {if (!hasError) { @@ -3596,7 +3595,7 @@ void VhdlParser::entity_declarative_part() {if (!hasError) { end_label_16: ; } -} + } QCString VhdlParser::entity_designator() {QCString s,s1;if (!hasError) { @@ -3621,7 +3620,7 @@ QCString VhdlParser::entity_designator() {QCString s,s1;if (!hasError) { return s+s1; assert(false); -} + } void VhdlParser::entity_header() {if (!hasError) { @@ -3663,7 +3662,7 @@ currP=VhdlDocGen::PORT; } } -} + } QCString VhdlParser::entity_name_list() {QCString s,s1; @@ -3734,7 +3733,7 @@ return "all"; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::entity_specification() {QCString s,s1;if (!hasError) { @@ -3752,7 +3751,7 @@ QCString VhdlParser::entity_specification() {QCString s,s1;if (!hasError) { return s+":"+s1; assert(false); -} + } void VhdlParser::entity_statement() { @@ -3785,7 +3784,7 @@ void VhdlParser::entity_statement() { errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } } -} + } void VhdlParser::entity_statement_part() {if (!hasError) { @@ -3814,7 +3813,7 @@ void VhdlParser::entity_statement_part() {if (!hasError) { end_label_18: ; } -} + } QCString VhdlParser::entity_tag() {QCString s; @@ -3850,7 +3849,7 @@ return s; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::enumeration_literal() {QCString s; @@ -3884,7 +3883,7 @@ return s; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::enumeration_type_definition() {QCString s,s1;if (!hasError) { @@ -3929,7 +3928,7 @@ s+=",";s+=s1; return "("+s+")"; assert(false); -} + } QCString VhdlParser::exit_statement() {QCString s,s1,s2;Token *t=0;Token *t1=0;if (!hasError) { @@ -4003,7 +4002,7 @@ lab.resize(0); return s+s1+s2+";"; assert(false); -} + } QCString VhdlParser::expression() {QCString s,s1,s2;if (!hasError) { @@ -4045,7 +4044,7 @@ s+=s1;s+=s2; return s; assert(false); -} + } QCString VhdlParser::logop() { @@ -4122,7 +4121,7 @@ return "or" ; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::extended_identifier() {Token *t;if (!hasError) { @@ -4132,7 +4131,7 @@ QCString VhdlParser::extended_identifier() {Token *t;if (!hasError) { return t->image.c_str(); assert(false); -} + } QCString VhdlParser::factor() {QCString s,s1; @@ -4218,7 +4217,7 @@ s1="not ";return s1+s; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::file_declaration() {QCString s,s1,s2,s3;if (!hasError) { @@ -4262,7 +4261,7 @@ QCString t1=s2+" "+s3; addVhdlType(s.data(),getLine(),Entry::VARIABLE_SEC,VhdlDocGen::VFILE,0,t1.data(),Public); return " file "+s+":"+s2+" "+s3+";"; assert(false); -} + } QCString VhdlParser::file_logical_name() {QCString s;if (!hasError) { @@ -4272,7 +4271,7 @@ QCString VhdlParser::file_logical_name() {QCString s;if (!hasError) { return s; assert(false); -} + } QCString VhdlParser::file_open_information() {QCString s,s1,s2;if (!hasError) { @@ -4305,7 +4304,7 @@ QCString VhdlParser::file_open_information() {QCString s,s1,s2;if (!hasError) { s2="open "+s+" is "+s1; return s2; assert(false); -} + } QCString VhdlParser::file_type_definition() {QCString s,s1;if (!hasError) { @@ -4323,7 +4322,7 @@ QCString VhdlParser::file_type_definition() {QCString s,s1;if (!hasError) { s1=" file of "+s; return s1; assert(false); -} + } QCString VhdlParser::floating_type_definition() {QCString s;if (!hasError) { @@ -4333,7 +4332,7 @@ QCString VhdlParser::floating_type_definition() {QCString s;if (!hasError) { return s; assert(false); -} + } QCString VhdlParser::formal_designator() {QCString s;Token *tok=0; @@ -4369,7 +4368,7 @@ return tok->image.c_str(); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::formal_parameter_list() {QCString s;if (!hasError) { @@ -4379,7 +4378,7 @@ QCString VhdlParser::formal_parameter_list() {QCString s;if (!hasError) { return s; assert(false); -} + } QCString VhdlParser::formal_part() {QCString s,s1;if (!hasError) { @@ -4416,7 +4415,7 @@ s+"("+s1+")"; return s; assert(false); -} + } QCString VhdlParser::full_type_declaration() {Entry *tmpEntry;QCString s,s1,s2;if (!hasError) { @@ -4472,7 +4471,7 @@ if (s2.contains("#")) { tmpEntry=0; return "type "+s+" is "+s2+";"; assert(false); -} + } QCString VhdlParser::function_call() {QCString s,s1;if (!hasError) { @@ -4494,7 +4493,7 @@ QCString VhdlParser::function_call() {QCString s,s1;if (!hasError) { return s+"("+s1+")"; assert(false); -} + } void VhdlParser::generate_statement() {QCString s;if (!hasError) { @@ -4558,7 +4557,7 @@ error_skipto(GENERATE_T); } genLabels=popLabel(genLabels); -} + } void VhdlParser::generate_scheme() { @@ -4590,7 +4589,7 @@ void VhdlParser::generate_scheme() { jj_consume_token(-1); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } -} + } void VhdlParser::generic_clause() {QCString s;if (!hasError) { @@ -4619,7 +4618,7 @@ parse_sec=GEN_SEC; } parse_sec=0; -} + } QCString VhdlParser::generic_list() {QCString s;if (!hasError) { @@ -4629,7 +4628,7 @@ QCString VhdlParser::generic_list() {QCString s;if (!hasError) { return s; assert(false); -} + } void VhdlParser::generic_map_aspect() {if (!hasError) { @@ -4653,7 +4652,7 @@ void VhdlParser::generic_map_aspect() {if (!hasError) { jj_consume_token(RPAREN_T); } -} + } QCString VhdlParser::group_constituent() {QCString s; @@ -4689,7 +4688,7 @@ return s; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::group_constituent_list() {QCString s,s1,s2;if (!hasError) { @@ -4729,7 +4728,7 @@ s2+=",";s2+=s1; return s+s2; assert(false); -} + } QCString VhdlParser::group_declaration() {QCString s,s1,s2;if (!hasError) { @@ -4767,7 +4766,7 @@ QCString VhdlParser::group_declaration() {QCString s,s1,s2;if (!hasError) { return "group "+s+":"+s1+"("+s2+");"; assert(false); -} + } QCString VhdlParser::group_template_declaration() {QCString s,s1;if (!hasError) { @@ -4801,7 +4800,7 @@ QCString VhdlParser::group_template_declaration() {QCString s,s1;if (!hasError) return "group "+s+ "is ("+s1+");"; assert(false); -} + } void VhdlParser::guarded_signal_specification() {if (!hasError) { @@ -4817,7 +4816,7 @@ void VhdlParser::guarded_signal_specification() {if (!hasError) { type_mark(); } -} + } QCString VhdlParser::identifier() {Token *tok=0; @@ -4850,7 +4849,7 @@ return tok->image.c_str(); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::identifier_list() {QCString str,str1;if (!hasError) { @@ -4887,7 +4886,7 @@ str+=",";str+=str1; return str; assert(false); -} + } void VhdlParser::if_statement() {QCString s,s1;if (!hasError) { @@ -5021,7 +5020,7 @@ FlowChart::addFlowChart(FlowChart::ELSE_NO,0,0); FlowChart::moveToPrevLevel(); FlowChart::addFlowChart(FlowChart::ENDIF_NO,0,0); -} + } QCString VhdlParser::incomplete_type_declaration() {QCString s;if (!hasError) { @@ -5039,7 +5038,7 @@ QCString VhdlParser::incomplete_type_declaration() {QCString s;if (!hasError) { return "type "+s+";"; assert(false); -} + } QCString VhdlParser::index_constraint() {QCString s="("; QCString s1,s2;if (!hasError) { @@ -5088,7 +5087,7 @@ s+=",";s+=s1; return s+")"; assert(false); -} + } QCString VhdlParser::index_specification() {QCString s; @@ -5136,7 +5135,7 @@ return s; } } assert(false); -} + } QCString VhdlParser::index_subtype_definition() {QCString s;if (!hasError) { @@ -5154,7 +5153,7 @@ QCString VhdlParser::index_subtype_definition() {QCString s;if (!hasError) { return s+" range <> "; assert(false); -} + } QCString VhdlParser::instantiation_unit() {QCString s,s1,s2;Token *tok; @@ -5269,7 +5268,7 @@ s1="configuration ";return s; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::instantiation_list() {QCString s;Token *tok=0; @@ -5314,7 +5313,7 @@ return tok->image.c_str(); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::integer() {Token *t;if (!hasError) { @@ -5324,7 +5323,7 @@ QCString VhdlParser::integer() {Token *t;if (!hasError) { return t->image.c_str(); assert(false); -} + } QCString VhdlParser::integer_type_definition() {QCString s;if (!hasError) { @@ -5334,7 +5333,7 @@ QCString VhdlParser::integer_type_definition() {QCString s;if (!hasError) { return s; assert(false); -} + } QCString VhdlParser::interface_declaration() {QCString s,s1; @@ -5423,7 +5422,7 @@ if (parse_sec==GEN_SEC) } } assert(false); -} + } QCString VhdlParser::interface_element() {QCString s;if (!hasError) { @@ -5433,7 +5432,7 @@ QCString VhdlParser::interface_element() {QCString s;if (!hasError) { return s; assert(false); -} + } QCString VhdlParser::interface_file_declaration() {QCString s,s1;if (!hasError) { @@ -5456,7 +5455,7 @@ QCString VhdlParser::interface_file_declaration() {QCString s,s1;if (!hasError) addVhdlType(s.data(),getLine(),Entry::VARIABLE_SEC,VhdlDocGen::VFILE,0,s1.data(),Public); return " file "+s+":"+s1; assert(false); -} + } QCString VhdlParser::interface_list() {QCString s,s1,s2;if (!hasError) { @@ -5493,7 +5492,7 @@ s2+=";";s2+=s1; return s+s2; assert(false); -} + } QCString VhdlParser::interface_variable_declaration() {Token *tok=0;Token *tok1=0;Token *tok2=0;QCString s,s1,s2,s3,s4,s5;if (!hasError) { @@ -5641,7 +5640,7 @@ if(tok) } // if component return it; assert(false); -} + } QCString VhdlParser::iteration_scheme() {QCString s; @@ -5688,7 +5687,7 @@ QCString q=lab+" for "+s; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::label() {QCString s;if (!hasError) { @@ -5698,7 +5697,7 @@ QCString VhdlParser::label() {QCString s;if (!hasError) { return s; assert(false); -} + } QCString VhdlParser::library_clause() {QCString s;if (!hasError) { @@ -5724,7 +5723,7 @@ if ( parse_sec==0 && Config_getBool(SHOW_INCLUDE_FILES) ) QCString s1="library "+s; return s1; assert(false); -} + } QCString VhdlParser::library_unit() {QCString s; @@ -5765,7 +5764,7 @@ return s; } } assert(false); -} + } QCString VhdlParser::literal() {QCString s; @@ -5827,7 +5826,7 @@ return "null"; } } assert(false); -} + } QCString VhdlParser::logical_operator() {QCString s;if (!hasError) { @@ -5837,7 +5836,7 @@ QCString VhdlParser::logical_operator() {QCString s;if (!hasError) { return s; assert(false); -} + } QCString VhdlParser::loop_statement() {QCString s,s1,s2,s3;if (!hasError) { @@ -5928,7 +5927,7 @@ QCString q = s+" loop "+s2+" end loop" +s3; FlowChart::addFlowChart(FlowChart::END_LOOP,endLoop.data(),0); return q; assert(false); -} + } QCString VhdlParser::miscellaneous_operator() {Token *t=0; @@ -5972,7 +5971,7 @@ return "not"; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::mode() {Token *tok=0; @@ -6038,7 +6037,7 @@ return "linkage"; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::multiplying_operation() {Token *tok=0; @@ -6093,7 +6092,7 @@ return tok->image.c_str(); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::name() {QCString s,s1;if (!hasError) { @@ -6145,7 +6144,7 @@ s+=s1; return s; assert(false); -} + } QCString VhdlParser::name_ext1() {QCString s,s1,s2;if (!hasError) { @@ -6174,7 +6173,7 @@ s+=s1; return s; assert(false); -} + } QCString VhdlParser::name_ext() {QCString s,s1,s2;if (!hasError) { @@ -6274,7 +6273,7 @@ s+=")"; return s; assert(false); -} + } QCString VhdlParser::test_att_name() {QCString s,s1;if (!hasError) { @@ -6334,7 +6333,7 @@ s+="(";s+=s1;s+=")"; return s; assert(false); -} + } QCString VhdlParser::indexed_name() {QCString s,s1,s2;if (!hasError) { @@ -6387,7 +6386,7 @@ s+=",";s+=s1; return s+")"; assert(false); -} + } QCString VhdlParser::next_statement() {QCString s,s1,s2;Token *t=0;Token *t1=0;if (!hasError) { @@ -6460,7 +6459,7 @@ if(t) s+=":"; if(t1) s2.prepend("when "); return s+s1+s2+";"; assert(false); -} + } QCString VhdlParser::null_statement() {QCString s;if (!hasError) { @@ -6498,7 +6497,7 @@ s+=":"; return s+="null"; assert(false); -} + } QCString VhdlParser::numeric_literal() {QCString s; @@ -6533,7 +6532,7 @@ return s; } } assert(false); -} + } QCString VhdlParser::object_class() { @@ -6614,7 +6613,7 @@ return "type"; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::operator_symbol() {Token *tok=0;if (!hasError) { @@ -6624,7 +6623,7 @@ QCString VhdlParser::operator_symbol() {Token *tok=0;if (!hasError) { return tok->image.c_str(); assert(false); -} + } void VhdlParser::options() {if (!hasError) { @@ -6660,7 +6659,7 @@ void VhdlParser::options() {if (!hasError) { } } -} + } void VhdlParser::package_body() {QCString s;if (!hasError) { @@ -6736,7 +6735,7 @@ lastCompound=current; } lastCompound=0; genLabels.resize(0); -} + } void VhdlParser::package_body_declarative_item() { @@ -6824,7 +6823,7 @@ void VhdlParser::package_body_declarative_item() { } } } -} + } void VhdlParser::package_body_declarative_part() {if (!hasError) { @@ -6859,7 +6858,7 @@ void VhdlParser::package_body_declarative_part() {if (!hasError) { end_label_29: ; } -} + } void VhdlParser::package_declaration() {QCString s;if (!hasError) { @@ -6934,7 +6933,7 @@ lastCompound=current; } lastEntity=0;lastCompound=0; genLabels.resize(0); -} + } void VhdlParser::geninter() {if (!hasError) { @@ -6976,7 +6975,7 @@ void VhdlParser::geninter() {if (!hasError) { } } -} + } void VhdlParser::package_declarative_item() { @@ -7121,7 +7120,7 @@ void VhdlParser::package_declarative_item() { } } } -} + } void VhdlParser::package_declarative_part() {if (!hasError) { @@ -7161,7 +7160,7 @@ void VhdlParser::package_declarative_part() {if (!hasError) { end_label_30: ; } -} + } QCString VhdlParser::parameter_specification() {QCString s,s1;if (!hasError) { @@ -7179,7 +7178,7 @@ QCString VhdlParser::parameter_specification() {QCString s,s1;if (!hasError) { return s+" in "+s1; assert(false); -} + } QCString VhdlParser::physical_literal() {QCString s,s1;if (!hasError) { @@ -7200,7 +7199,7 @@ QCString VhdlParser::physical_literal() {QCString s,s1;if (!hasError) { s+=" ";s+=s1;s.prepend(" "); return s; assert(false); -} + } QCString VhdlParser::physical_type_definition() {QCString s,s1,s2;if (!hasError) { @@ -7268,7 +7267,7 @@ addVhdlType(s.data(),getLine(),Entry::VARIABLE_SEC,VhdlDocGen::UNITS,0,0,Public) return s+"%"; assert(false); -} + } void VhdlParser::port_clause() {if (!hasError) { @@ -7293,7 +7292,7 @@ void VhdlParser::port_clause() {if (!hasError) { } currP=0; -} + } QCString VhdlParser::port_list() {QCString s;if (!hasError) { @@ -7303,7 +7302,7 @@ QCString VhdlParser::port_list() {QCString s;if (!hasError) { return s; assert(false); -} + } void VhdlParser::port_map_aspect() {if (!hasError) { @@ -7327,7 +7326,7 @@ void VhdlParser::port_map_aspect() {if (!hasError) { jj_consume_token(RPAREN_T); } -} + } QCString VhdlParser::primary() {QCString s,s1; @@ -7424,7 +7423,7 @@ return s; } } assert(false); -} + } void VhdlParser::primary_unit() { @@ -7471,7 +7470,7 @@ void VhdlParser::primary_unit() { } } } -} + } QCString VhdlParser::procedure_call() {QCString s,s1;if (!hasError) { @@ -7508,7 +7507,7 @@ s1.prepend("("); s1.append(")"); return s+s1; assert(false); -} + } QCString VhdlParser::procedure_call_statement() {QCString s,s1;if (!hasError) { @@ -7541,7 +7540,7 @@ s+=":"; return s+s1+";"; assert(false); -} + } QCString VhdlParser::process_declarative_item() {QCString s; @@ -7696,7 +7695,7 @@ return s; } } assert(false); -} + } QCString VhdlParser::process_declarative_part() {QCString s,s1;if (!hasError) { @@ -7738,7 +7737,7 @@ s+=s1; return s; assert(false); -} + } void VhdlParser::process_statement() {QCString s,s1,s2;Token *tok=0;if (!hasError) { @@ -7923,7 +7922,7 @@ if(s.isEmpty()) createFlow(); currName=""; newEntry(); -} + } void VhdlParser::process_statement_part() {if (!hasError) { @@ -7963,7 +7962,7 @@ void VhdlParser::process_statement_part() {if (!hasError) { end_label_33: ; } -} + } QCString VhdlParser::qualified_expression() {QCString s,s1;if (!hasError) { @@ -8020,7 +8019,7 @@ s+="(";s+=s1;s+=")"; return s; assert(false); -} + } QCString VhdlParser::range() {QCString s,s1,s2; @@ -8055,7 +8054,7 @@ return s; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::range_constraint() {QCString s,s1;if (!hasError) { @@ -8069,7 +8068,7 @@ QCString VhdlParser::range_constraint() {QCString s,s1;if (!hasError) { return " range "+s; assert(false); -} + } void VhdlParser::record_type_definition() {if (!hasError) { @@ -8123,7 +8122,7 @@ void VhdlParser::record_type_definition() {if (!hasError) { } } -} + } QCString VhdlParser::relation() {QCString s,s1,s2;if (!hasError) { @@ -8157,7 +8156,7 @@ QCString VhdlParser::relation() {QCString s,s1,s2;if (!hasError) { return s+s1+s2; assert(false); -} + } QCString VhdlParser::relation_operator() { @@ -8234,7 +8233,7 @@ return "/="; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::report_statement() {Token *t=0;Token *t1=0;QCString s,s1,s2;if (!hasError) { @@ -8294,7 +8293,7 @@ if(t) s.append(":"); if(t1) s2.prepend(" severity "); return s+s1+s2+";"; assert(false); -} + } QCString VhdlParser::return_statement() {QCString s,s1;if (!hasError) { @@ -8362,7 +8361,7 @@ s+=":"; return s+" return "+s1+";"; assert(false); -} + } QCString VhdlParser::scalar_type_definition() {QCString s,s1; @@ -8406,7 +8405,7 @@ return s+" "+s1+"%"; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } void VhdlParser::secondary_unit() { @@ -8430,7 +8429,7 @@ void VhdlParser::secondary_unit() { jj_consume_token(-1); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } -} + } QCString VhdlParser::secondary_unit_declaration() {QCString s,s1;if (!hasError) { @@ -8455,7 +8454,7 @@ QCString VhdlParser::secondary_unit_declaration() {QCString s,s1;if (!hasError) return s+"="+s1; assert(false); -} + } QCString VhdlParser::selected_name() {QCString s,s1;if (!hasError) { @@ -8473,7 +8472,7 @@ QCString VhdlParser::selected_name() {QCString s,s1;if (!hasError) { return s+"."+s1; assert(false); -} + } void VhdlParser::selected_signal_assignment() {if (!hasError) { @@ -8509,7 +8508,7 @@ void VhdlParser::selected_signal_assignment() {if (!hasError) { jj_consume_token(SEMI_T); } -} + } void VhdlParser::selected_waveforms() {if (!hasError) { @@ -8556,7 +8555,7 @@ void VhdlParser::selected_waveforms() {if (!hasError) { end_label_35: ; } -} + } QCString VhdlParser::sensitivity_clause() {QCString s;if (!hasError) { @@ -8571,7 +8570,7 @@ QCString VhdlParser::sensitivity_clause() {QCString s;if (!hasError) { s.prepend(" on "); return s; assert(false); -} + } QCString VhdlParser::sensitivity_list() {QCString s,s1;if (!hasError) { @@ -8608,7 +8607,7 @@ s+=",";s+=s1; return s; assert(false); -} + } QCString VhdlParser::sequence_of_statement() {QCString s,s1;if (!hasError) { @@ -8633,7 +8632,7 @@ s+=s1; return s; assert(false); -} + } QCString VhdlParser::sequential_statement() {QCString s; @@ -8767,7 +8766,7 @@ FlowChart::addFlowChart(FlowChart::TEXT_NO,s.data(),0);return s; } } assert(false); -} + } QCString VhdlParser::shift_expression() {QCString s,s1,s2;if (!hasError) { @@ -8801,7 +8800,7 @@ QCString VhdlParser::shift_expression() {QCString s,s1,s2;if (!hasError) { return s+s1+s2; assert(false); -} + } QCString VhdlParser::shift_operator() { @@ -8878,7 +8877,7 @@ return "ror"; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::sign() { @@ -8911,7 +8910,7 @@ return "-"; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::signal_assignment_statement() {QCString s,s1,s2,s3; @@ -9005,7 +9004,7 @@ return s+s1+"<="+s2+s3+";"; } } assert(false); -} + } void VhdlParser::semi() {if (!hasError) { @@ -9013,7 +9012,7 @@ void VhdlParser::semi() {if (!hasError) { jj_consume_token(SEMI_T); } -} + } void VhdlParser::signal_declaration() {Token* tok=0;QCString s,s1,s2,s3,s4;if (!hasError) { @@ -9076,7 +9075,7 @@ if(tok) s3.prepend(":="); s4=s1+s2+s3; addVhdlType(s.data(),getLine(),Entry::VARIABLE_SEC,VhdlDocGen::SIGNAL,0,s4.data(),Public); -} + } QCString VhdlParser::signal_kind() { @@ -9109,7 +9108,7 @@ return "bus"; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::signal_list() {QCString s,s1; @@ -9179,7 +9178,7 @@ return "all"; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::signature() {QCString s,s1,s2;if (!hasError) { @@ -9261,7 +9260,7 @@ s+="return ";s+=s1; s1="["+s+"]";return s1; assert(false); -} + } QCString VhdlParser::simple_expression() {QCString s,s1,s2;if (!hasError) { @@ -9314,7 +9313,7 @@ s+=s1;s+=s2; return s; assert(false); -} + } void VhdlParser::simple_name() {if (!hasError) { @@ -9322,7 +9321,7 @@ void VhdlParser::simple_name() {if (!hasError) { name(); } -} + } QCString VhdlParser::slice_name() {QCString s,s1;if (!hasError) { @@ -9344,7 +9343,7 @@ QCString VhdlParser::slice_name() {QCString s,s1;if (!hasError) { return s+"("+s1+")"; assert(false); -} + } QCString VhdlParser::string_literal() {Token *tok=0;if (!hasError) { @@ -9354,7 +9353,7 @@ QCString VhdlParser::string_literal() {Token *tok=0;if (!hasError) { return tok->image.c_str(); assert(false); -} + } void VhdlParser::subprogram_body() {QCString s;if (!hasError) { @@ -9427,7 +9426,7 @@ if (s.data()) tempEntry->endBodyLine=getLine(END_T); createFlow(); currP=0; -} + } void VhdlParser::subprogram_declaration() { @@ -9462,7 +9461,7 @@ currP=0; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } } -} + } void VhdlParser::subprogram_1() { @@ -9486,7 +9485,7 @@ void VhdlParser::subprogram_1() { jj_consume_token(-1); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } -} + } QCString VhdlParser::subprogram_declarative_item() {QCString s; @@ -9652,7 +9651,7 @@ return s; } } assert(false); -} + } QCString VhdlParser::subprogram_declarative_part() {QCString s,s1;if (!hasError) { @@ -9695,7 +9694,7 @@ s+=s1; return s; assert(false); -} + } void VhdlParser::subprogram_kind() { @@ -9719,7 +9718,7 @@ void VhdlParser::subprogram_kind() { jj_consume_token(-1); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } -} + } void VhdlParser::subprogram_specification() {QCString s;Token *tok=0;Token *t; @@ -9913,7 +9912,7 @@ tempEntry=current; jj_consume_token(-1); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } -} + } void VhdlParser::subprogram_statement_part() {if (!hasError) { @@ -9953,7 +9952,7 @@ void VhdlParser::subprogram_statement_part() {if (!hasError) { end_label_42: ; } -} + } QCString VhdlParser::subtype_declaration() {QCString s,s1;if (!hasError) { @@ -9980,7 +9979,7 @@ QCString VhdlParser::subtype_declaration() {QCString s,s1;if (!hasError) { addVhdlType(s.data(),getLine(),Entry::VARIABLE_SEC,VhdlDocGen::SUBTYPE,0,s1.data(),Public); return " subtype "+s+" is "+s1+";"; assert(false); -} + } QCString VhdlParser::subtype_indication() {QCString s,s1,s2;if (!hasError) { @@ -10012,7 +10011,7 @@ QCString VhdlParser::subtype_indication() {QCString s,s1,s2;if (!hasError) { return s+" "+s1+" "+s2; assert(false); -} + } QCString VhdlParser::suffix() {QCString s; @@ -10067,7 +10066,7 @@ return " all "; } } assert(false); -} + } QCString VhdlParser::target() {QCString s; @@ -10103,7 +10102,7 @@ return s; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::term() {QCString s,s1,s2;if (!hasError) { @@ -10136,7 +10135,7 @@ s+=s1;s+=s2; return s; assert(false); -} + } QCString VhdlParser::timeout_clause() {QCString s;if (!hasError) { @@ -10150,7 +10149,7 @@ QCString VhdlParser::timeout_clause() {QCString s;if (!hasError) { return " for "+s; assert(false); -} + } QCString VhdlParser::type_conversion() {QCString s,s1;if (!hasError) { @@ -10172,7 +10171,7 @@ QCString VhdlParser::type_conversion() {QCString s,s1;if (!hasError) { return s+"("+s1+")"; assert(false); -} + } QCString VhdlParser::type_declaration() {QCString s; @@ -10205,7 +10204,7 @@ return s; } } assert(false); -} + } QCString VhdlParser::type_definition() {QCString s; @@ -10289,7 +10288,7 @@ return ""; } } assert(false); -} + } QCString VhdlParser::type_mark() {QCString s;if (!hasError) { @@ -10299,7 +10298,7 @@ QCString VhdlParser::type_mark() {QCString s;if (!hasError) { return s; assert(false); -} + } QCString VhdlParser::unconstraint_array_definition() {QCString s,s1,s2,s3;if (!hasError) { @@ -10356,7 +10355,7 @@ s3+=",";s3+=s1; return "array("+s+s3+") of "+s2; assert(false); -} + } QCString VhdlParser::use_clause() {QCString s,s1;if (!hasError) { @@ -10412,7 +10411,7 @@ QStringList ql1=QStringList::split(",",s,FALSE); s1="use "+s; return s1; assert(false); -} + } QCString VhdlParser::variable_assignment_statement() {QCString s,s1,s2; @@ -10480,7 +10479,7 @@ return ""; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::variable_declaration() {Token *tok=0;Token *t1=0;QCString s,s1,s2;if (!hasError) { @@ -10559,7 +10558,7 @@ int spec; addVhdlType(s.data(),getLine(),Entry::VARIABLE_SEC,spec,0,it.data(),Public); return val; assert(false); -} + } QCString VhdlParser::wait_statement() {QCString s,s1,s2,s3;Token *t=0;if (!hasError) { @@ -10639,7 +10638,7 @@ QCString VhdlParser::wait_statement() {QCString s,s1,s2,s3;Token *t=0;if (!hasEr if(t) s.append(":"); return s+" wait "+s1+s2+s3+";"; assert(false); -} + } QCString VhdlParser::waveform() {QCString s,s1; @@ -10714,7 +10713,7 @@ return " unaffected "; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::waveform_element() {QCString s,s1;if (!hasError) { @@ -10747,7 +10746,7 @@ s1.prepend(" after "); return s+s1; assert(false); -} + } QCString VhdlParser::protected_type_body() {if (!hasError) { @@ -10793,7 +10792,7 @@ QCString VhdlParser::protected_type_body() {if (!hasError) { return ""; assert(false); -} + } void VhdlParser::protected_type_body_declarative_item() { @@ -10906,7 +10905,7 @@ void VhdlParser::protected_type_body_declarative_item() { } } } -} + } void VhdlParser::protected_type_body_declarative_part() {if (!hasError) { @@ -10943,7 +10942,7 @@ void VhdlParser::protected_type_body_declarative_part() {if (!hasError) { end_label_47: ; } -} + } QCString VhdlParser::protected_type_declaration() {if (!hasError) { @@ -10988,7 +10987,7 @@ error_skipto(END_T); return ""; assert(false); -} + } void VhdlParser::protected_type_declarative_item() { @@ -11022,7 +11021,7 @@ void VhdlParser::protected_type_declarative_item() { jj_consume_token(-1); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } -} + } void VhdlParser::protected_type_declarative_part() {if (!hasError) { @@ -11054,7 +11053,7 @@ void VhdlParser::protected_type_declarative_part() {if (!hasError) { end_label_48: ; } -} + } QCString VhdlParser::context_ref() {QCString s;if (!hasError) { @@ -11072,7 +11071,7 @@ QCString VhdlParser::context_ref() {QCString s;if (!hasError) { return "context "+s ; assert(false); -} + } void VhdlParser::context_declaration() {QCString s,s1;if (!hasError) { @@ -11154,7 +11153,7 @@ parse_sec=CONTEXT_SEC; parse_sec=0; addVhdlType(s.data(),getLine(LIBRARY_T),Entry::VARIABLE_SEC,VhdlDocGen::LIBRARY,"context",s1.data(),Public); -} + } QCString VhdlParser::libustcont_stats() {QCString s; @@ -11198,7 +11197,7 @@ return s; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } void VhdlParser::package_instantiation_declaration() {QCString s,s1,s2;if (!hasError) { @@ -11247,7 +11246,7 @@ void VhdlParser::package_instantiation_declaration() {QCString s,s1,s2;if (!hasE QCString q=" is new "+s1+s2; addVhdlType(s.data(),getLine(PACKAGE_T),Entry::VARIABLE_SEC,VhdlDocGen::INSTANTIATION,"package",q.data(),Public); -} + } QCString VhdlParser::interface_package_declaration() {QCString s,s1;if (!hasError) { @@ -11289,7 +11288,7 @@ QCString VhdlParser::interface_package_declaration() {QCString s,s1;if (!hasErro current->name=s; return "package "+s+" is new "+s1; assert(false); -} + } QCString VhdlParser::subprogram_instantiation_declaration() {QCString s,s1,s2;if (!hasError) { @@ -11340,7 +11339,7 @@ QCString q= " is new "+s1+s2; addVhdlType(s.data(),getLine(FUNCTION_T),Entry::VARIABLE_SEC,VhdlDocGen::INSTANTIATION,"function ",q.data(),Public); return q; assert(false); -} + } void VhdlParser::gen_assoc_list() {if (!hasError) { @@ -11364,7 +11363,7 @@ void VhdlParser::gen_assoc_list() {if (!hasError) { jj_consume_token(RPAREN_T); } -} + } void VhdlParser::gen_interface_list() {if (!hasError) { @@ -11394,7 +11393,7 @@ void VhdlParser::gen_interface_list() {if (!hasError) { jj_consume_token(RPAREN_T); } -} + } void VhdlParser::case_scheme() {if (!hasError) { @@ -11441,7 +11440,7 @@ void VhdlParser::case_scheme() {if (!hasError) { jj_consume_token(SEMI_T); } -} + } void VhdlParser::when_stats() {if (!hasError) { @@ -11491,7 +11490,7 @@ void VhdlParser::when_stats() {if (!hasError) { end_label_50: ; } -} + } void VhdlParser::ttend() {if (!hasError) { @@ -11519,7 +11518,7 @@ void VhdlParser::ttend() {if (!hasError) { jj_consume_token(SEMI_T); } -} + } void VhdlParser::generate_statement_body() {if (!hasError) { @@ -11531,7 +11530,7 @@ void VhdlParser::generate_statement_body() {if (!hasError) { generate_statement_body(); } -} + } void VhdlParser::generate_statement_body1() {if (!hasError) { @@ -11612,7 +11611,7 @@ void VhdlParser::generate_statement_body1() {if (!hasError) { end_label_52: ; } -} + } QCString VhdlParser::external_name() {QCString s,s1,s2;if (!hasError) { @@ -11644,7 +11643,7 @@ QCString t="<<"+s; QCString t1=s1+":"+s2+">>"; return s+s1; assert(false); -} + } QCString VhdlParser::sig_stat() {Token *t; @@ -11688,7 +11687,7 @@ return t->image.data(); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::external_pathname() {QCString s; @@ -11732,7 +11731,7 @@ return s; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::absolute_pathname() {QCString s,s1; @@ -11777,7 +11776,7 @@ return "."+s; } } assert(false); -} + } QCString VhdlParser::relative_pathname() {QCString s,s1,s2;if (!hasError) { @@ -11802,7 +11801,7 @@ QCString VhdlParser::relative_pathname() {QCString s,s1,s2;if (!hasError) { return s+s1+s2; assert(false); -} + } QCString VhdlParser::neg_list() {QCString s;if (!hasError) { @@ -11835,7 +11834,7 @@ s+="^."; return s; assert(false); -} + } QCString VhdlParser::pathname_element() {QCString s,s1;if (!hasError) { @@ -11871,7 +11870,7 @@ if(!s1.isEmpty()) return s; assert(false); -} + } QCString VhdlParser::pathname_element_list() {QCString s,s1,s2;if (!hasError) { @@ -11915,7 +11914,7 @@ s2+=s1;s2+="."; return s+s2; assert(false); -} + } QCString VhdlParser::package_path_name() {QCString s;if (!hasError) { @@ -11929,7 +11928,7 @@ QCString VhdlParser::package_path_name() {QCString s;if (!hasError) { return "@"+s; assert(false); -} + } void VhdlParser::conditional_signal_assignment_wave() { @@ -11957,7 +11956,7 @@ void VhdlParser::conditional_signal_assignment_wave() { errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } } -} + } void VhdlParser::conditional_waveform_assignment() {if (!hasError) { @@ -12017,7 +12016,7 @@ void VhdlParser::conditional_waveform_assignment() {if (!hasError) { jj_consume_token(SEMI_T); } -} + } void VhdlParser::else_wave_list() {if (!hasError) { @@ -12048,7 +12047,7 @@ void VhdlParser::else_wave_list() {if (!hasError) { } } -} + } void VhdlParser::conditional_force_assignment() {if (!hasError) { @@ -12126,7 +12125,7 @@ void VhdlParser::conditional_force_assignment() {if (!hasError) { jj_consume_token(SEMI_T); } -} + } void VhdlParser::selected_signal_assignment_wave() { @@ -12150,7 +12149,7 @@ void VhdlParser::selected_signal_assignment_wave() { errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } } -} + } void VhdlParser::selected_variable_assignment() {if (!hasError) { @@ -12193,7 +12192,7 @@ void VhdlParser::selected_variable_assignment() {if (!hasError) { sel_var_list(); } -} + } void VhdlParser::select_name() { @@ -12220,7 +12219,7 @@ void VhdlParser::select_name() { errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } } -} + } void VhdlParser::selected_waveform_assignment() {if (!hasError) { @@ -12280,7 +12279,7 @@ void VhdlParser::selected_waveform_assignment() {if (!hasError) { sel_wave_list(); } -} + } void VhdlParser::selected_force_assignment() {if (!hasError) { @@ -12343,7 +12342,7 @@ void VhdlParser::selected_force_assignment() {if (!hasError) { sel_var_list(); } -} + } void VhdlParser::sel_var_list() {if (!hasError) { @@ -12431,7 +12430,7 @@ void VhdlParser::sel_var_list() {if (!hasError) { end_label_55: ; } -} + } void VhdlParser::sel_wave_list() {if (!hasError) { @@ -12474,7 +12473,7 @@ void VhdlParser::sel_wave_list() {if (!hasError) { jj_consume_token(SEMI_T); } -} + } void VhdlParser::inout_stat() { @@ -12498,7 +12497,7 @@ void VhdlParser::inout_stat() { jj_consume_token(-1); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } -} + } void VhdlParser::else_stat() {if (!hasError) { @@ -12544,7 +12543,7 @@ void VhdlParser::else_stat() {if (!hasError) { end_label_57: ; } -} + } QCString VhdlParser::interface_subprogram_declaration() {QCString s; @@ -12579,7 +12578,7 @@ return s; errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } assert(false); -} + } QCString VhdlParser::iproc() {QCString s,s1;if (!hasError) { @@ -12598,7 +12597,7 @@ QCString VhdlParser::iproc() {QCString s,s1;if (!hasError) { current->name=s; return "procedure "+s+s1; assert(false); -} + } QCString VhdlParser::ifunc() {QCString s,s1,s2,s3;Token *t=0;Token *t1=0;Token *t2=0;if (!hasError) { @@ -12712,7 +12711,7 @@ QCString q; } currP=0;return ""; assert(false); -} + } QCString VhdlParser::param() {QCString s,s1;Token *tok=0;if (!hasError) { @@ -12766,7 +12765,7 @@ if(tok) param_sec=0; return s+"("+s1+")"; assert(false); -} + } void VhdlParser::parseInline() { @@ -12796,21 +12795,31 @@ void VhdlParser::parseInline() { jj_consume_token(-1); errorHandler->handleParseError(token, getToken(1), __FUNCTION__, this), hasError = true; } -} + } VhdlParser::VhdlParser(TokenManager *tm){ head = NULL; - errorHandlerCreated = false; ReInit(tm); } -VhdlParser::~VhdlParser() + VhdlParser::~VhdlParser() { - clear(); + if (token_source) delete token_source; + if (head) { + Token *next, *t = head; + while (t) { + next = t->next; + delete t; + t = next; + } + } + if (errorHandlerCreated) { + delete errorHandler; + } } void VhdlParser::ReInit(TokenManager *tm){ - clear(); + if (head) delete head; errorHandler = new ErrorHandler(); errorHandlerCreated = true; hasError = false; @@ -12832,24 +12841,6 @@ void VhdlParser::ReInit(TokenManager *tm){ } -void VhdlParser::clear(){ - //Since token manager was generate from outside, - //parser should not take care of deleting - //if (token_source) delete token_source; - if (head) { - Token *next, *t = head; - while (t) { - next = t->next; - delete t; - t = next; - } - } - if (errorHandlerCreated) { - delete errorHandler; - } -} - - Token * VhdlParser::jj_consume_token(int kind) { Token *oldToken; if ((oldToken = token)->next != NULL) token = token->next; @@ -12872,8 +12863,7 @@ Token * VhdlParser::jj_consume_token(int kind) { token = oldToken; jj_kind = kind; JAVACC_STRING_TYPE image = kind >= 0 ? tokenImage[kind] : tokenImage[0]; - errorHandler->handleUnexpectedToken(kind, image.substr(1, image.size() - 2), getToken(1), this); - hasError = true; + errorHandler->handleUnexpectedToken(kind, image.substr(1, image.size() - 2), getToken(1), this), hasError = true; return token; } @@ -12930,23 +12920,26 @@ int VhdlParser::jj_ntk_f(){ } - void VhdlParser::jj_add_error_token(int kind, int pos) { +void VhdlParser::jj_add_error_token(int kind, int pos) { } + /** Generate ParseException. */ void VhdlParser::parseError() { fprintf(stderr, "Parse error at: %d:%d, after token: %s encountered: %s\n", token->beginLine, token->beginColumn, addUnicodeEscapes(token->image).c_str(), addUnicodeEscapes(getToken(1)->image).c_str()); } - void VhdlParser::enable_tracing() { + void VhdlParser::enable_tracing() { } - void VhdlParser::disable_tracing() { + /** Disable tracing. */ + + void VhdlParser::disable_tracing() { } - void VhdlParser::jj_rescan_token(){ +void VhdlParser::jj_rescan_token(){ jj_rescan = true; for (int i = 0; i < 115; i++) { JJCalls *p = &jj_2_rtns[i]; @@ -13078,7 +13071,7 @@ int VhdlParser::jj_ntk_f(){ } - void VhdlParser::jj_save(int index, int xla){ +void VhdlParser::jj_save(int index, int xla){ JJCalls *p = &jj_2_rtns[index]; while (p->gen > jj_gen) { if (p->next == NULL) { p = p->next = new JJCalls(); break; } diff --git a/vhdlparser/VhdlParser.h b/vhdlparser/VhdlParser.h index bd02af3..3e32daa 100644 --- a/vhdlparser/VhdlParser.h +++ b/vhdlparser/VhdlParser.h @@ -12,12 +12,12 @@ namespace vhdl { namespace parser { struct JJCalls { - int gen; - int arg; - JJCalls* next; - Token* first; + int gen; + Token *first; + int arg; + JJCalls *next; ~JJCalls() { if (next) delete next; } - JJCalls() { next = NULL; arg = 0; gen = -1; first = NULL; } + JJCalls() { next = NULL; arg = 0; gen = -1; first = NULL; } }; class VhdlParser { @@ -582,7 +582,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_1() || jj_done); + return !jj_3_1() || jj_done; { jj_save(0, xla); } } @@ -590,7 +590,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_2() || jj_done); + return !jj_3_2() || jj_done; { jj_save(1, xla); } } @@ -598,7 +598,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_3() || jj_done); + return !jj_3_3() || jj_done; { jj_save(2, xla); } } @@ -606,7 +606,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_4() || jj_done); + return !jj_3_4() || jj_done; { jj_save(3, xla); } } @@ -614,7 +614,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_5() || jj_done); + return !jj_3_5() || jj_done; { jj_save(4, xla); } } @@ -622,7 +622,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_6() || jj_done); + return !jj_3_6() || jj_done; { jj_save(5, xla); } } @@ -630,7 +630,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_7() || jj_done); + return !jj_3_7() || jj_done; { jj_save(6, xla); } } @@ -638,7 +638,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_8() || jj_done); + return !jj_3_8() || jj_done; { jj_save(7, xla); } } @@ -646,7 +646,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_9() || jj_done); + return !jj_3_9() || jj_done; { jj_save(8, xla); } } @@ -654,7 +654,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_10() || jj_done); + return !jj_3_10() || jj_done; { jj_save(9, xla); } } @@ -662,7 +662,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_11() || jj_done); + return !jj_3_11() || jj_done; { jj_save(10, xla); } } @@ -670,7 +670,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_12() || jj_done); + return !jj_3_12() || jj_done; { jj_save(11, xla); } } @@ -678,7 +678,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_13() || jj_done); + return !jj_3_13() || jj_done; { jj_save(12, xla); } } @@ -686,7 +686,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_14() || jj_done); + return !jj_3_14() || jj_done; { jj_save(13, xla); } } @@ -694,7 +694,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_15() || jj_done); + return !jj_3_15() || jj_done; { jj_save(14, xla); } } @@ -702,7 +702,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_16() || jj_done); + return !jj_3_16() || jj_done; { jj_save(15, xla); } } @@ -710,7 +710,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_17() || jj_done); + return !jj_3_17() || jj_done; { jj_save(16, xla); } } @@ -718,7 +718,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_18() || jj_done); + return !jj_3_18() || jj_done; { jj_save(17, xla); } } @@ -726,7 +726,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_19() || jj_done); + return !jj_3_19() || jj_done; { jj_save(18, xla); } } @@ -734,7 +734,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_20() || jj_done); + return !jj_3_20() || jj_done; { jj_save(19, xla); } } @@ -742,7 +742,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_21() || jj_done); + return !jj_3_21() || jj_done; { jj_save(20, xla); } } @@ -750,7 +750,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_22() || jj_done); + return !jj_3_22() || jj_done; { jj_save(21, xla); } } @@ -758,7 +758,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_23() || jj_done); + return !jj_3_23() || jj_done; { jj_save(22, xla); } } @@ -766,7 +766,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_24() || jj_done); + return !jj_3_24() || jj_done; { jj_save(23, xla); } } @@ -774,7 +774,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_25() || jj_done); + return !jj_3_25() || jj_done; { jj_save(24, xla); } } @@ -782,7 +782,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_26() || jj_done); + return !jj_3_26() || jj_done; { jj_save(25, xla); } } @@ -790,7 +790,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_27() || jj_done); + return !jj_3_27() || jj_done; { jj_save(26, xla); } } @@ -798,7 +798,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_28() || jj_done); + return !jj_3_28() || jj_done; { jj_save(27, xla); } } @@ -806,7 +806,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_29() || jj_done); + return !jj_3_29() || jj_done; { jj_save(28, xla); } } @@ -814,7 +814,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_30() || jj_done); + return !jj_3_30() || jj_done; { jj_save(29, xla); } } @@ -822,7 +822,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_31() || jj_done); + return !jj_3_31() || jj_done; { jj_save(30, xla); } } @@ -830,7 +830,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_32() || jj_done); + return !jj_3_32() || jj_done; { jj_save(31, xla); } } @@ -838,7 +838,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_33() || jj_done); + return !jj_3_33() || jj_done; { jj_save(32, xla); } } @@ -846,7 +846,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_34() || jj_done); + return !jj_3_34() || jj_done; { jj_save(33, xla); } } @@ -854,7 +854,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_35() || jj_done); + return !jj_3_35() || jj_done; { jj_save(34, xla); } } @@ -862,7 +862,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_36() || jj_done); + return !jj_3_36() || jj_done; { jj_save(35, xla); } } @@ -870,7 +870,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_37() || jj_done); + return !jj_3_37() || jj_done; { jj_save(36, xla); } } @@ -878,7 +878,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_38() || jj_done); + return !jj_3_38() || jj_done; { jj_save(37, xla); } } @@ -886,7 +886,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_39() || jj_done); + return !jj_3_39() || jj_done; { jj_save(38, xla); } } @@ -894,7 +894,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_40() || jj_done); + return !jj_3_40() || jj_done; { jj_save(39, xla); } } @@ -902,7 +902,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_41() || jj_done); + return !jj_3_41() || jj_done; { jj_save(40, xla); } } @@ -910,7 +910,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_42() || jj_done); + return !jj_3_42() || jj_done; { jj_save(41, xla); } } @@ -918,7 +918,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_43() || jj_done); + return !jj_3_43() || jj_done; { jj_save(42, xla); } } @@ -926,7 +926,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_44() || jj_done); + return !jj_3_44() || jj_done; { jj_save(43, xla); } } @@ -934,7 +934,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_45() || jj_done); + return !jj_3_45() || jj_done; { jj_save(44, xla); } } @@ -942,7 +942,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_46() || jj_done); + return !jj_3_46() || jj_done; { jj_save(45, xla); } } @@ -950,7 +950,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_47() || jj_done); + return !jj_3_47() || jj_done; { jj_save(46, xla); } } @@ -958,7 +958,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_48() || jj_done); + return !jj_3_48() || jj_done; { jj_save(47, xla); } } @@ -966,7 +966,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_49() || jj_done); + return !jj_3_49() || jj_done; { jj_save(48, xla); } } @@ -974,7 +974,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_50() || jj_done); + return !jj_3_50() || jj_done; { jj_save(49, xla); } } @@ -982,7 +982,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_51() || jj_done); + return !jj_3_51() || jj_done; { jj_save(50, xla); } } @@ -990,7 +990,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_52() || jj_done); + return !jj_3_52() || jj_done; { jj_save(51, xla); } } @@ -998,7 +998,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_53() || jj_done); + return !jj_3_53() || jj_done; { jj_save(52, xla); } } @@ -1006,7 +1006,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_54() || jj_done); + return !jj_3_54() || jj_done; { jj_save(53, xla); } } @@ -1014,7 +1014,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_55() || jj_done); + return !jj_3_55() || jj_done; { jj_save(54, xla); } } @@ -1022,7 +1022,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_56() || jj_done); + return !jj_3_56() || jj_done; { jj_save(55, xla); } } @@ -1030,7 +1030,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_57() || jj_done); + return !jj_3_57() || jj_done; { jj_save(56, xla); } } @@ -1038,7 +1038,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_58() || jj_done); + return !jj_3_58() || jj_done; { jj_save(57, xla); } } @@ -1046,7 +1046,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_59() || jj_done); + return !jj_3_59() || jj_done; { jj_save(58, xla); } } @@ -1054,7 +1054,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_60() || jj_done); + return !jj_3_60() || jj_done; { jj_save(59, xla); } } @@ -1062,7 +1062,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_61() || jj_done); + return !jj_3_61() || jj_done; { jj_save(60, xla); } } @@ -1070,7 +1070,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_62() || jj_done); + return !jj_3_62() || jj_done; { jj_save(61, xla); } } @@ -1078,7 +1078,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_63() || jj_done); + return !jj_3_63() || jj_done; { jj_save(62, xla); } } @@ -1086,7 +1086,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_64() || jj_done); + return !jj_3_64() || jj_done; { jj_save(63, xla); } } @@ -1094,7 +1094,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_65() || jj_done); + return !jj_3_65() || jj_done; { jj_save(64, xla); } } @@ -1102,7 +1102,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_66() || jj_done); + return !jj_3_66() || jj_done; { jj_save(65, xla); } } @@ -1110,7 +1110,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_67() || jj_done); + return !jj_3_67() || jj_done; { jj_save(66, xla); } } @@ -1118,7 +1118,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_68() || jj_done); + return !jj_3_68() || jj_done; { jj_save(67, xla); } } @@ -1126,7 +1126,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_69() || jj_done); + return !jj_3_69() || jj_done; { jj_save(68, xla); } } @@ -1134,7 +1134,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_70() || jj_done); + return !jj_3_70() || jj_done; { jj_save(69, xla); } } @@ -1142,7 +1142,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_71() || jj_done); + return !jj_3_71() || jj_done; { jj_save(70, xla); } } @@ -1150,7 +1150,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_72() || jj_done); + return !jj_3_72() || jj_done; { jj_save(71, xla); } } @@ -1158,7 +1158,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_73() || jj_done); + return !jj_3_73() || jj_done; { jj_save(72, xla); } } @@ -1166,7 +1166,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_74() || jj_done); + return !jj_3_74() || jj_done; { jj_save(73, xla); } } @@ -1174,7 +1174,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_75() || jj_done); + return !jj_3_75() || jj_done; { jj_save(74, xla); } } @@ -1182,7 +1182,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_76() || jj_done); + return !jj_3_76() || jj_done; { jj_save(75, xla); } } @@ -1190,7 +1190,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_77() || jj_done); + return !jj_3_77() || jj_done; { jj_save(76, xla); } } @@ -1198,7 +1198,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_78() || jj_done); + return !jj_3_78() || jj_done; { jj_save(77, xla); } } @@ -1206,7 +1206,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_79() || jj_done); + return !jj_3_79() || jj_done; { jj_save(78, xla); } } @@ -1214,7 +1214,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_80() || jj_done); + return !jj_3_80() || jj_done; { jj_save(79, xla); } } @@ -1222,7 +1222,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_81() || jj_done); + return !jj_3_81() || jj_done; { jj_save(80, xla); } } @@ -1230,7 +1230,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_82() || jj_done); + return !jj_3_82() || jj_done; { jj_save(81, xla); } } @@ -1238,7 +1238,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_83() || jj_done); + return !jj_3_83() || jj_done; { jj_save(82, xla); } } @@ -1246,7 +1246,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_84() || jj_done); + return !jj_3_84() || jj_done; { jj_save(83, xla); } } @@ -1254,7 +1254,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_85() || jj_done); + return !jj_3_85() || jj_done; { jj_save(84, xla); } } @@ -1262,7 +1262,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_86() || jj_done); + return !jj_3_86() || jj_done; { jj_save(85, xla); } } @@ -1270,7 +1270,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_87() || jj_done); + return !jj_3_87() || jj_done; { jj_save(86, xla); } } @@ -1278,7 +1278,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_88() || jj_done); + return !jj_3_88() || jj_done; { jj_save(87, xla); } } @@ -1286,7 +1286,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_89() || jj_done); + return !jj_3_89() || jj_done; { jj_save(88, xla); } } @@ -1294,7 +1294,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_90() || jj_done); + return !jj_3_90() || jj_done; { jj_save(89, xla); } } @@ -1302,7 +1302,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_91() || jj_done); + return !jj_3_91() || jj_done; { jj_save(90, xla); } } @@ -1310,7 +1310,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_92() || jj_done); + return !jj_3_92() || jj_done; { jj_save(91, xla); } } @@ -1318,7 +1318,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_93() || jj_done); + return !jj_3_93() || jj_done; { jj_save(92, xla); } } @@ -1326,7 +1326,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_94() || jj_done); + return !jj_3_94() || jj_done; { jj_save(93, xla); } } @@ -1334,7 +1334,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_95() || jj_done); + return !jj_3_95() || jj_done; { jj_save(94, xla); } } @@ -1342,7 +1342,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_96() || jj_done); + return !jj_3_96() || jj_done; { jj_save(95, xla); } } @@ -1350,7 +1350,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_97() || jj_done); + return !jj_3_97() || jj_done; { jj_save(96, xla); } } @@ -1358,7 +1358,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_98() || jj_done); + return !jj_3_98() || jj_done; { jj_save(97, xla); } } @@ -1366,7 +1366,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_99() || jj_done); + return !jj_3_99() || jj_done; { jj_save(98, xla); } } @@ -1374,7 +1374,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_100() || jj_done); + return !jj_3_100() || jj_done; { jj_save(99, xla); } } @@ -1382,7 +1382,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_101() || jj_done); + return !jj_3_101() || jj_done; { jj_save(100, xla); } } @@ -1390,7 +1390,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_102() || jj_done); + return !jj_3_102() || jj_done; { jj_save(101, xla); } } @@ -1398,7 +1398,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_103() || jj_done); + return !jj_3_103() || jj_done; { jj_save(102, xla); } } @@ -1406,7 +1406,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_104() || jj_done); + return !jj_3_104() || jj_done; { jj_save(103, xla); } } @@ -1414,7 +1414,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_105() || jj_done); + return !jj_3_105() || jj_done; { jj_save(104, xla); } } @@ -1422,7 +1422,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_106() || jj_done); + return !jj_3_106() || jj_done; { jj_save(105, xla); } } @@ -1430,7 +1430,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_107() || jj_done); + return !jj_3_107() || jj_done; { jj_save(106, xla); } } @@ -1438,7 +1438,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_108() || jj_done); + return !jj_3_108() || jj_done; { jj_save(107, xla); } } @@ -1446,7 +1446,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_109() || jj_done); + return !jj_3_109() || jj_done; { jj_save(108, xla); } } @@ -1454,7 +1454,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_110() || jj_done); + return !jj_3_110() || jj_done; { jj_save(109, xla); } } @@ -1462,7 +1462,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_111() || jj_done); + return !jj_3_111() || jj_done; { jj_save(110, xla); } } @@ -1470,7 +1470,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_112() || jj_done); + return !jj_3_112() || jj_done; { jj_save(111, xla); } } @@ -1478,7 +1478,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_113() || jj_done); + return !jj_3_113() || jj_done; { jj_save(112, xla); } } @@ -1486,7 +1486,7 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_114() || jj_done); + return !jj_3_114() || jj_done; { jj_save(113, xla); } } @@ -1494,38 +1494,10 @@ void parseInline(); { jj_la = xla; jj_lastpos = jj_scanpos = token; jj_done = false; - return (!jj_3_115() || jj_done); + return !jj_3_115() || jj_done; { jj_save(114, xla); } } - inline bool jj_3R_228() - { - if (jj_done) return true; - if (jj_3R_94()) return true; - return false; - } - - inline bool jj_3R_106() - { - if (jj_done) return true; - Token * xsp; - xsp = jj_scanpos; - if (jj_3R_228()) { - jj_scanpos = xsp; - if (jj_3R_229()) { - jj_scanpos = xsp; - if (jj_3R_230()) { - jj_scanpos = xsp; - if (jj_3R_231()) { - jj_scanpos = xsp; - if (jj_3R_232()) return true; - } - } - } - } - return false; - } - inline bool jj_3_43() { if (jj_done) return true; @@ -5178,7 +5150,7 @@ void parseInline(); jj_scanpos = xsp; if (jj_3R_503()) { jj_scanpos = xsp; - if (jj_scan_token(187)) return true; + if (jj_scan_token(189)) return true; } } } @@ -8867,46 +8839,67 @@ void parseInline(); return false; } + inline bool jj_3R_228() + { + if (jj_done) return true; + if (jj_3R_94()) return true; + return false; + } + + inline bool jj_3R_106() + { + if (jj_done) return true; + Token * xsp; + xsp = jj_scanpos; + if (jj_3R_228()) { + jj_scanpos = xsp; + if (jj_3R_229()) { + jj_scanpos = xsp; + if (jj_3R_230()) { + jj_scanpos = xsp; + if (jj_3R_231()) { + jj_scanpos = xsp; + if (jj_3R_232()) return true; + } + } + } + } + return false; + } -public: - TokenManager *token_source; - CharStream *jj_input_stream; + public: TokenManager *token_source; + public: CharStream *jj_input_stream; /** Current token. */ - Token *token; + public: Token *token; /** Next token. */ - Token *jj_nt; -private: - int jj_ntk; - JJCalls jj_2_rtns[116]; - bool jj_rescan; - int jj_gc; - Token *jj_scanpos, *jj_lastpos; - int jj_la; + public: Token *jj_nt; + private: int jj_ntk; + private: JJCalls jj_2_rtns[116]; + private: bool jj_rescan; + private: int jj_gc; + private: Token *jj_scanpos, *jj_lastpos; + private: int jj_la; /** Whether we are looking ahead. */ - bool jj_lookingAhead; - bool jj_semLA; - int jj_gen; - int jj_la1[294]; - ErrorHandler *errorHandler; - bool errorHandlerCreated; -protected: - bool hasError; -public: - void setErrorHandler(ErrorHandler *eh) { + private: bool jj_lookingAhead; + private: bool jj_semLA; + private: int jj_gen; + private: int jj_la1[294]; + private: ErrorHandler *errorHandler; + private: bool errorHandlerCreated; + protected: bool hasError; + public: void setErrorHandler(ErrorHandler *eh) { if (errorHandlerCreated) delete errorHandler; errorHandler = eh; errorHandlerCreated = false; } - Token *head; -public: + Token *head; + public: VhdlParser(TokenManager *tm); - virtual ~VhdlParser(); + public: virtual ~VhdlParser(); void ReInit(TokenManager *tm); -void clear(); - Token * jj_consume_token(int kind); bool jj_scan_token(int kind); @@ -8916,29 +8909,24 @@ Token * getNextToken(); Token * getToken(int index); int jj_ntk_f(); -private: - int jj_kind; + private: int jj_kind; int **jj_expentries; int *jj_expentry; - void jj_add_error_token(int kind, int pos); -protected: - /** Generate ParseException. */ - - virtual void parseError(); -private: - int trace_indent; - bool trace_enabled; +void jj_add_error_token(int kind, int pos); -public: +protected: virtual void parseError(); + private: int trace_indent; + private: bool trace_enabled; + /** Enable tracing. */ - void enable_tracing(); +public: void enable_tracing(); - void disable_tracing(); +public: void disable_tracing(); - void jj_rescan_token(); +void jj_rescan_token(); - void jj_save(int index, int xla); +void jj_save(int index, int xla); typedef unsigned long long uint64; static Entry* current_root; @@ -8982,10 +8970,8 @@ static void mapLibPackage( Entry* root); static void createFlow(); static void error_skipto(int kind); static void oneLineComment(QCString qcs); -static void setMultCommentLine(); +static void setMultCommentLine();private: bool jj_done; -private: - bool jj_done; }; } } diff --git a/vhdlparser/VhdlParserConstants.h b/vhdlparser/VhdlParserConstants.h index 73f2a43..8d4b417 100644 --- a/vhdlparser/VhdlParserConstants.h +++ b/vhdlparser/VhdlParserConstants.h @@ -357,27 +357,31 @@ const int GRAPHIC_CHARACTER = 175; /** RegularExpression Id. */ const int LETTER_OR_DIGIT = 176; /** RegularExpression Id. */ -const int LETTER = 177; +const int LETTER_OR_DIGIT_OR_STD = 177; /** RegularExpression Id. */ -const int UPPER_CASE_LETTER = 178; +const int LETTER = 178; /** RegularExpression Id. */ -const int BIT_STRING_LITERAL = 179; +const int UPPER_CASE_LETTER = 179; /** RegularExpression Id. */ -const int BASE_SPECIFIER = 180; +const int BIT_STRING_LITERAL = 180; /** RegularExpression Id. */ -const int DIGIT = 181; +const int BASE_SPECIFIER = 181; /** RegularExpression Id. */ -const int SPECIAL_CHARACTER = 182; +const int STD_LOGIC = 182; /** RegularExpression Id. */ -const int OTHER_SPECIAL_CHARACTER = 183; +const int DIGIT = 183; /** RegularExpression Id. */ -const int SPACE_CHARACTER = 184; +const int SPECIAL_CHARACTER = 184; /** RegularExpression Id. */ -const int LOWER_CASE_LETTER = 185; +const int OTHER_SPECIAL_CHARACTER = 185; /** RegularExpression Id. */ -const int QUOTE = 186; +const int SPACE_CHARACTER = 186; /** RegularExpression Id. */ -const int VHDL2008TOOLDIR = 187; +const int LOWER_CASE_LETTER = 187; + /** RegularExpression Id. */ +const int QUOTE = 188; + /** RegularExpression Id. */ +const int VHDL2008TOOLDIR = 189; /** Lexical state. */ const int DEFAULT = 0; @@ -738,26 +742,30 @@ const int DEFAULT = 0; static JAVACC_CHAR_TYPE tokenImage_arr_176[] = {0x22, 0x3c, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52, 0x5f, 0x4f, 0x52, 0x5f, 0x44, 0x49, 0x47, 0x49, 0x54, 0x3e, 0x22, 0}; static JAVACC_CHAR_TYPE tokenImage_arr_177[] = -{0x22, 0x3c, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52, 0x3e, 0x22, 0}; +{0x22, 0x3c, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52, 0x5f, 0x4f, 0x52, 0x5f, 0x44, 0x49, 0x47, 0x49, 0x54, 0x5f, 0x4f, 0x52, 0x5f, 0x53, 0x54, 0x44, 0x3e, 0x22, 0}; static JAVACC_CHAR_TYPE tokenImage_arr_178[] = -{0x22, 0x3c, 0x55, 0x50, 0x50, 0x45, 0x52, 0x5f, 0x43, 0x41, 0x53, 0x45, 0x5f, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52, 0x3e, 0x22, 0}; +{0x22, 0x3c, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52, 0x3e, 0x22, 0}; static JAVACC_CHAR_TYPE tokenImage_arr_179[] = -{0x22, 0x3c, 0x42, 0x49, 0x54, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x4c, 0x49, 0x54, 0x45, 0x52, 0x41, 0x4c, 0x3e, 0x22, 0}; +{0x22, 0x3c, 0x55, 0x50, 0x50, 0x45, 0x52, 0x5f, 0x43, 0x41, 0x53, 0x45, 0x5f, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52, 0x3e, 0x22, 0}; static JAVACC_CHAR_TYPE tokenImage_arr_180[] = -{0x22, 0x3c, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x52, 0x3e, 0x22, 0}; +{0x22, 0x3c, 0x42, 0x49, 0x54, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x4c, 0x49, 0x54, 0x45, 0x52, 0x41, 0x4c, 0x3e, 0x22, 0}; static JAVACC_CHAR_TYPE tokenImage_arr_181[] = -{0x22, 0x3c, 0x44, 0x49, 0x47, 0x49, 0x54, 0x3e, 0x22, 0}; +{0x22, 0x3c, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x52, 0x3e, 0x22, 0}; static JAVACC_CHAR_TYPE tokenImage_arr_182[] = -{0x22, 0x3c, 0x53, 0x50, 0x45, 0x43, 0x49, 0x41, 0x4c, 0x5f, 0x43, 0x48, 0x41, 0x52, 0x41, 0x43, 0x54, 0x45, 0x52, 0x3e, 0x22, 0}; +{0x22, 0x3c, 0x53, 0x54, 0x44, 0x5f, 0x4c, 0x4f, 0x47, 0x49, 0x43, 0x3e, 0x22, 0}; static JAVACC_CHAR_TYPE tokenImage_arr_183[] = -{0x22, 0x3c, 0x4f, 0x54, 0x48, 0x45, 0x52, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x49, 0x41, 0x4c, 0x5f, 0x43, 0x48, 0x41, 0x52, 0x41, 0x43, 0x54, 0x45, 0x52, 0x3e, 0x22, 0}; +{0x22, 0x3c, 0x44, 0x49, 0x47, 0x49, 0x54, 0x3e, 0x22, 0}; static JAVACC_CHAR_TYPE tokenImage_arr_184[] = -{0x22, 0x3c, 0x53, 0x50, 0x41, 0x43, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x52, 0x41, 0x43, 0x54, 0x45, 0x52, 0x3e, 0x22, 0}; +{0x22, 0x3c, 0x53, 0x50, 0x45, 0x43, 0x49, 0x41, 0x4c, 0x5f, 0x43, 0x48, 0x41, 0x52, 0x41, 0x43, 0x54, 0x45, 0x52, 0x3e, 0x22, 0}; static JAVACC_CHAR_TYPE tokenImage_arr_185[] = -{0x22, 0x3c, 0x4c, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x43, 0x41, 0x53, 0x45, 0x5f, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52, 0x3e, 0x22, 0}; +{0x22, 0x3c, 0x4f, 0x54, 0x48, 0x45, 0x52, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x49, 0x41, 0x4c, 0x5f, 0x43, 0x48, 0x41, 0x52, 0x41, 0x43, 0x54, 0x45, 0x52, 0x3e, 0x22, 0}; static JAVACC_CHAR_TYPE tokenImage_arr_186[] = -{0x22, 0x3c, 0x51, 0x55, 0x4f, 0x54, 0x45, 0x3e, 0x22, 0}; +{0x22, 0x3c, 0x53, 0x50, 0x41, 0x43, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x52, 0x41, 0x43, 0x54, 0x45, 0x52, 0x3e, 0x22, 0}; static JAVACC_CHAR_TYPE tokenImage_arr_187[] = +{0x22, 0x3c, 0x4c, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x43, 0x41, 0x53, 0x45, 0x5f, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52, 0x3e, 0x22, 0}; + static JAVACC_CHAR_TYPE tokenImage_arr_188[] = +{0x22, 0x3c, 0x51, 0x55, 0x4f, 0x54, 0x45, 0x3e, 0x22, 0}; + static JAVACC_CHAR_TYPE tokenImage_arr_189[] = {0x22, 0x3c, 0x56, 0x48, 0x44, 0x4c, 0x32, 0x30, 0x30, 0x38, 0x54, 0x4f, 0x4f, 0x4c, 0x44, 0x49, 0x52, 0x3e, 0x22, 0}; static JAVACC_STRING_TYPE tokenImage[] = { tokenImage_arr_0, @@ -948,6 +956,8 @@ tokenImage_arr_184, tokenImage_arr_185, tokenImage_arr_186, tokenImage_arr_187, +tokenImage_arr_188, +tokenImage_arr_189, }; } diff --git a/vhdlparser/VhdlParserTokenManager.cc b/vhdlparser/VhdlParserTokenManager.cc index 07364a4..418e076 100644 --- a/vhdlparser/VhdlParserTokenManager.cc +++ b/vhdlparser/VhdlParserTokenManager.cc @@ -1,6 +1,5 @@ /* VhdlParserTokenManager.cc */ -#include "VhdlParserTokenManager.h" -#include "TokenMgrError.h" +#include "./VhdlParserTokenManager.h" namespace vhdl { namespace parser { static const unsigned long long jjbitVec0[] = { @@ -13,10 +12,10 @@ static const unsigned long long jjbitVec3[] = { 0x0ULL, 0x0ULL, 0xffffffff00000000ULL, 0xffffffffffffffffULL }; static const int jjnextStates[] = { - 54, 55, 56, 57, 58, 61, 65, 66, 67, 48, 49, 2, 37, 38, 0, 3, - 4, 5, 7, 12, 13, 15, 16, 24, 23, 25, 33, 34, 36, 39, 40, 42, - 56, 57, 58, 61, 60, 59, 61, 65, 66, 67, 68, 69, 71, 9, 10, 28, - 29, 45, 47, 50, 52, 27, 30, + 54, 55, 56, 57, 58, 61, 65, 66, 67, 76, 21, 48, 49, 2, 37, 38, + 0, 3, 4, 5, 7, 12, 13, 15, 16, 24, 23, 25, 33, 34, 36, 39, + 40, 42, 56, 57, 58, 61, 60, 59, 61, 65, 66, 67, 68, 69, 71, 9, + 10, 28, 29, 45, 47, 50, 52, 27, 30, }; static JAVACC_CHAR_TYPE jjstrLiteralChars_0[] = {0}; static JAVACC_CHAR_TYPE jjstrLiteralChars_1[] = {0}; @@ -236,6 +235,8 @@ static JAVACC_CHAR_TYPE jjstrLiteralChars_184[] = {0}; static JAVACC_CHAR_TYPE jjstrLiteralChars_185[] = {0}; static JAVACC_CHAR_TYPE jjstrLiteralChars_186[] = {0}; static JAVACC_CHAR_TYPE jjstrLiteralChars_187[] = {0}; +static JAVACC_CHAR_TYPE jjstrLiteralChars_188[] = {0}; +static JAVACC_CHAR_TYPE jjstrLiteralChars_189[] = {0}; static const JAVACC_STRING_TYPE jjstrLiteralImages[] = { jjstrLiteralChars_0, jjstrLiteralChars_1, @@ -425,6 +426,8 @@ jjstrLiteralChars_184, jjstrLiteralChars_185, jjstrLiteralChars_186, jjstrLiteralChars_187, +jjstrLiteralChars_188, +jjstrLiteralChars_189, }; /** Lexer state names. */ @@ -434,7 +437,7 @@ static const JAVACC_STRING_TYPE lexStateNames[] = { lexStateNames_arr_0, }; static const unsigned long long jjtoToken[] = { - 0xfffffffffffff801ULL, 0xffffffffffffffffULL, 0x8081fffffffffffULL, + 0xfffffffffffff801ULL, 0xffffffffffffffffULL, 0x20101fffffffffffULL, }; static const unsigned long long jjtoSkip[] = { 0x7deULL, 0x0ULL, 0x0ULL, @@ -2683,7 +2686,7 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ curChar = input_stream->readChar(); curPos = 0; int startsAt = 0; - jjnewStateCnt = 76; + jjnewStateCnt = 77; int i = 1; jjstateSet[0] = startState; int kind = 0x7fffffff; @@ -2704,14 +2707,14 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ { if (kind > 165) kind = 165; - { jjCheckNAddStates(0, 8); } + { jjCheckNAddStates(0, 10); } } else if ((0x100000200ULL & l) != 0L) { jjCheckNAddTwoStates(0, 3); } else if (curChar == 47) - { jjAddStates(9, 10); } + { jjAddStates(11, 12); } else if (curChar == 45) - { jjCheckNAddStates(11, 13); } + { jjCheckNAddStates(13, 15); } else if (curChar == 39) jjstateSet[jjnewStateCnt++] = 18; else if (curChar == 34) @@ -2732,7 +2735,7 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ break; if (kind > 6) kind = 6; - { jjCheckNAddStates(14, 18); } + { jjCheckNAddStates(16, 20); } break; case 2: if (curChar == 45) @@ -2747,7 +2750,7 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ break; if (kind > 6) kind = 6; - { jjCheckNAddStates(14, 18); } + { jjCheckNAddStates(16, 20); } break; case 5: if ((0x2400ULL & l) == 0L) @@ -2787,11 +2790,11 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ break; if (kind > 167) kind = 167; - { jjAddStates(19, 20); } + { jjAddStates(21, 22); } break; case 15: if ((0xfffffffb00000200ULL & l) != 0L) - { jjAddStates(21, 22); } + { jjAddStates(23, 24); } break; case 17: if (curChar == 39) @@ -2817,12 +2820,12 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ { jjCheckNAdd(23); } break; case 23: - if ((0x3ff000000000000ULL & l) != 0L) - { jjCheckNAddStates(23, 25); } + if ((0x3ff200000000000ULL & l) != 0L) + { jjCheckNAddStates(25, 27); } break; case 25: - if (curChar == 34 && kind > 179) - kind = 179; + if (curChar == 34 && kind > 180) + kind = 180; break; case 27: if (curChar == 34) @@ -2835,34 +2838,34 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ case 29: if (curChar != 34) break; - if (kind > 187) - kind = 187; + if (kind > 189) + kind = 189; { jjCheckNAddTwoStates(27, 30); } break; case 30: if ((0xfffffffb00000200ULL & l) == 0L) break; - if (kind > 187) - kind = 187; + if (kind > 189) + kind = 189; { jjCheckNAddTwoStates(27, 30); } break; case 31: if (curChar == 45) - { jjCheckNAddStates(11, 13); } + { jjCheckNAddStates(13, 15); } break; case 32: if (curChar != 35) break; if (kind > 7) kind = 7; - { jjCheckNAddStates(26, 28); } + { jjCheckNAddStates(28, 30); } break; case 33: if ((0xffffffffffffdbffULL & l) == 0L) break; if (kind > 7) kind = 7; - { jjCheckNAddStates(26, 28); } + { jjCheckNAddStates(28, 30); } break; case 34: if ((0x2400ULL & l) != 0L && kind > 7) @@ -2885,14 +2888,14 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ break; if (kind > 8) kind = 8; - { jjCheckNAddStates(29, 31); } + { jjCheckNAddStates(31, 33); } break; case 39: if ((0xffffffffffffdbffULL & l) == 0L) break; if (kind > 8) kind = 8; - { jjCheckNAddStates(29, 31); } + { jjCheckNAddStates(31, 33); } break; case 40: if ((0x2400ULL & l) != 0L && kind > 8) @@ -2908,7 +2911,7 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ break; case 43: if (curChar == 47) - { jjAddStates(9, 10); } + { jjAddStates(11, 12); } break; case 44: if (curChar == 33) @@ -2949,7 +2952,7 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ break; if (kind > 165) kind = 165; - { jjCheckNAddStates(0, 8); } + { jjCheckNAddStates(0, 10); } break; case 55: if ((0x3ff000000000000ULL & l) == 0L) @@ -2963,7 +2966,7 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ break; if (kind > 170) kind = 170; - { jjCheckNAddStates(32, 35); } + { jjCheckNAddStates(34, 37); } break; case 58: if (curChar == 46) @@ -2974,7 +2977,7 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ break; if (kind > 170) kind = 170; - { jjCheckNAddStates(36, 38); } + { jjCheckNAddStates(38, 40); } break; case 62: if ((0x280000000000ULL & l) != 0L) @@ -2989,7 +2992,7 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ break; case 66: if ((0x3ff000000000000ULL & l) != 0L) - { jjCheckNAddStates(39, 41); } + { jjCheckNAddStates(41, 43); } break; case 67: if (curChar == 35) @@ -2997,7 +3000,7 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ break; case 68: if ((0x3ff000000000000ULL & l) != 0L) - { jjCheckNAddStates(42, 44); } + { jjCheckNAddStates(44, 46); } break; case 69: if (curChar == 46) @@ -3025,6 +3028,10 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ kind = 172; { jjCheckNAddTwoStates(75, 74); } break; + case 76: + if ((0x3ff000000000000ULL & l) != 0L) + { jjCheckNAddTwoStates(76, 21); } + break; default : break; } } while(i != startsAt); @@ -3060,11 +3067,11 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ case 4: if (kind > 6) kind = 6; - { jjAddStates(14, 18); } + { jjAddStates(16, 20); } break; case 9: if ((0x7fffffffffffffffULL & l) != 0L) - { jjAddStates(45, 46); } + { jjAddStates(47, 48); } break; case 12: if (curChar == 95) @@ -3106,7 +3113,7 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ break; case 23: if ((0x7fffffe07fffffeULL & l) != 0L) - { jjCheckNAddStates(23, 25); } + { jjCheckNAddStates(25, 27); } break; case 24: if (curChar == 95) @@ -3118,30 +3125,30 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ break; case 28: if ((0x7fffffffffffffffULL & l) != 0L) - { jjAddStates(47, 48); } + { jjAddStates(49, 50); } break; case 30: if ((0x7fffffffffffffffULL & l) == 0L) break; - if (kind > 187) - kind = 187; + if (kind > 189) + kind = 189; { jjCheckNAddTwoStates(27, 30); } break; case 33: if (kind > 7) kind = 7; - { jjAddStates(26, 28); } + { jjAddStates(28, 30); } break; case 39: if (kind > 8) kind = 8; - { jjAddStates(29, 31); } + { jjAddStates(31, 33); } break; case 45: - { jjAddStates(49, 50); } + { jjAddStates(51, 52); } break; case 50: - { jjAddStates(51, 52); } + { jjAddStates(53, 54); } break; case 54: if (curChar == 95) @@ -3169,7 +3176,7 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ break; case 68: if ((0x7fffffe07fffffeULL & l) != 0L) - { jjCheckNAddStates(42, 44); } + { jjCheckNAddStates(44, 46); } break; case 70: if ((0x7fffffe07fffffeULL & l) != 0L) @@ -3203,15 +3210,15 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ break; if (kind > 6) kind = 6; - { jjAddStates(14, 18); } + { jjAddStates(16, 20); } break; case 9: if (jjCanMove_1(hiByte, i1, i2, l1, l2)) - { jjAddStates(45, 46); } + { jjAddStates(47, 48); } break; case 15: if (jjCanMove_1(hiByte, i1, i2, l1, l2)) - { jjAddStates(21, 22); } + { jjAddStates(23, 24); } break; case 18: if (jjCanMove_1(hiByte, i1, i2, l1, l2)) @@ -3219,36 +3226,36 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ break; case 28: if (jjCanMove_1(hiByte, i1, i2, l1, l2)) - { jjAddStates(47, 48); } + { jjAddStates(49, 50); } break; case 30: if (!jjCanMove_1(hiByte, i1, i2, l1, l2)) break; - if (kind > 187) - kind = 187; - { jjAddStates(53, 54); } + if (kind > 189) + kind = 189; + { jjAddStates(55, 56); } break; case 33: if (!jjCanMove_0(hiByte, i1, i2, l1, l2)) break; if (kind > 7) kind = 7; - { jjAddStates(26, 28); } + { jjAddStates(28, 30); } break; case 39: if (!jjCanMove_0(hiByte, i1, i2, l1, l2)) break; if (kind > 8) kind = 8; - { jjAddStates(29, 31); } + { jjAddStates(31, 33); } break; case 45: if (jjCanMove_0(hiByte, i1, i2, l1, l2)) - { jjAddStates(49, 50); } + { jjAddStates(51, 52); } break; case 50: if (jjCanMove_0(hiByte, i1, i2, l1, l2)) - { jjAddStates(51, 52); } + { jjAddStates(53, 54); } break; default : if (i1 == 0 || l1 == 0 || i2 == 0 || l2 == 0) break; else break; } @@ -3261,7 +3268,7 @@ int VhdlParserTokenManager::jjMoveNfa_0(int startState, int curPos){ kind = 0x7fffffff; } ++curPos; - if ((i = jjnewStateCnt), (jjnewStateCnt = startsAt), (i == (startsAt = 76 - startsAt))) + if ((i = jjnewStateCnt), (jjnewStateCnt = startsAt), (i == (startsAt = 77 - startsAt))) break; if (input_stream->endOfInput()) { break; } curChar = input_stream->readChar(); @@ -3314,10 +3321,10 @@ bool VhdlParserTokenManager::jjCanMove_1(int hiByte, int i1, int i2, unsigned lo Token * VhdlParserTokenManager::jjFillToken(){ Token *t; JAVACC_STRING_TYPE curTokenImage; - int beginLine = -1; - int endLine = -1; - int beginColumn = -1; - int endColumn = -1; + int beginLine; + int endLine; + int beginColumn; + int endColumn; JAVACC_STRING_TYPE im = jjstrLiteralImages[jjmatchedKind]; curTokenImage = (im.length() == 0) ? input_stream->GetImage() : im; if (input_stream->getTrackLineColumn()) { @@ -3326,9 +3333,7 @@ Token * VhdlParserTokenManager::jjFillToken(){ endLine = input_stream->getEndLine(); endColumn = input_stream->getEndColumn(); } - t = Token::newToken(jjmatchedKind); - t->kind = jjmatchedKind; - t->image = curTokenImage; + t = Token::newToken(jjmatchedKind, curTokenImage); t->specialToken = NULL; t->next = NULL; @@ -3586,7 +3591,7 @@ void VhdlParserTokenManager::TokenLexicalActions(Token *matchedToken){ } /** Reinitialise parser. */ void VhdlParserTokenManager::ReInit(JAVACC_CHARSTREAM *stream, int lexState, VhdlParser *parserArg) { - clear(); + if (input_stream) delete input_stream; jjmatchedPos = jjnewStateCnt = 0; curLexState = lexState; input_stream = stream; @@ -3601,23 +3606,16 @@ void VhdlParserTokenManager::TokenLexicalActions(Token *matchedToken){ void VhdlParserTokenManager::ReInitRounds() { int i; jjround = 0x80000001; - for (i = 76; i-- > 0;) + for (i = 77; i-- > 0;) jjrounds[i] = 0x80000000; } /** Switch to specified lex state. */ void VhdlParserTokenManager::SwitchTo(int lexState) { - if (lexState >= 1 || lexState < 0) { - JAVACC_STRING_TYPE message; -#ifdef WIDE_CHAR - message += L"Error: Ignoring invalid lexical state : "; - message += lexState; message += L". State unchanged."; -#else - message += "Error: Ignoring invalid lexical state : "; - message += lexState; message += ". State unchanged."; -#endif - throw new TokenMgrError(message, INVALID_LEXICAL_STATE); - } else + if (lexState >= 1 || lexState < 0) + assert(false); + //throw 1;//new TokenMgrError("Error: Ignoring invalid lexical state : " + lexState + ". State unchanged.", TokenMgrError.INVALID_LEXICAL_STATE); + else curLexState = lexState; } @@ -3625,23 +3623,14 @@ void VhdlParserTokenManager::TokenLexicalActions(Token *matchedToken){ VhdlParserTokenManager::VhdlParserTokenManager (JAVACC_CHARSTREAM *stream, int lexState, VhdlParser *parserArg) { input_stream = NULL; - errorHandlerCreated = false; ReInit(stream, lexState, parserArg); } // Destructor VhdlParserTokenManager::~VhdlParserTokenManager () { - clear(); + if (input_stream) delete input_stream; + if (errorHandlerCreated) delete errorHandler; } - // clear - void VhdlParserTokenManager::clear() { - //Since input_stream was generated outside of TokenManager - //TokenManager should not take care of deleting it - //if (input_stream) delete input_stream; - if (errorHandlerCreated) delete errorHandler; - } - - } } diff --git a/vhdlparser/VhdlParserTokenManager.h b/vhdlparser/VhdlParserTokenManager.h index d624373..e6a7245 100644 --- a/vhdlparser/VhdlParserTokenManager.h +++ b/vhdlparser/VhdlParserTokenManager.h @@ -1,6 +1,5 @@ #ifndef VHDLPARSERTOKENMANAGER_H #define VHDLPARSERTOKENMANAGER_H -#include "stdio.h" #include "JavaCC.h" #include "CharStream.h" #include "Token.h" @@ -117,27 +116,23 @@ void TokenLexicalActions(Token *matchedToken); public: virtual ~VhdlParserTokenManager(); void ReInit(JAVACC_CHARSTREAM *stream, int lexState = 0, VhdlParser *parserArg = NULL); void SwitchTo(int lexState); - void clear(); const JAVACC_SIMPLE_STRING jjKindsForBitVector(int i, unsigned long long vec); const JAVACC_SIMPLE_STRING jjKindsForStateVector(int lexState, int vec[], int start, int end); - JAVACC_CHARSTREAM* input_stream; - int jjrounds[76]; - int jjstateSet[2 * 76]; - JAVACC_STRING_TYPE jjimage; - JAVACC_STRING_TYPE image; - int jjimageLen; - int lengthOfMatch; - JAVACC_CHAR_TYPE curChar; - TokenManagerErrorHandler* errorHandler; - bool errorHandlerCreated; - -public: - void setErrorHandler(TokenManagerErrorHandler *eh) { + JAVACC_CHARSTREAM *input_stream; + int jjrounds[77]; + int jjstateSet[2 * 77]; + JAVACC_STRING_TYPE jjimage; + JAVACC_STRING_TYPE image; + int jjimageLen; + int lengthOfMatch; + JAVACC_CHAR_TYPE curChar; + TokenManagerErrorHandler *errorHandler; + bool errorHandlerCreated; + public: void setErrorHandler(TokenManagerErrorHandler *eh) { if (errorHandlerCreated && errorHandler != NULL) delete errorHandler; errorHandler = eh; errorHandlerCreated = false; } - }; } } diff --git a/vhdlparser/vhdlparser.jj b/vhdlparser/vhdlparser.jj index fbae037..1f85185 100644 --- a/vhdlparser/vhdlparser.jj +++ b/vhdlparser/vhdlparser.jj @@ -301,10 +301,12 @@ TOKEN: | < #BASIC_GRAPHIC_CHARACTER: (<UPPER_CASE_LETTER>|<DIGIT>|<SPECIAL_CHARACTER>|<SPACE_CHARACTER>) > | < #GRAPHIC_CHARACTER: ( <BASIC_GRAPHIC_CHARACTER>|<LOWER_CASE_LETTER>|<OTHER_SPECIAL_CHARACTER> ) > | < #LETTER_OR_DIGIT: ( <LETTER> | <DIGIT> ) > + | < #LETTER_OR_DIGIT_OR_STD: (<LETTER_OR_DIGIT> | <STD_LOGIC> ) > | < #LETTER: (<UPPER_CASE_LETTER>|<LOWER_CASE_LETTER>) > | < #UPPER_CASE_LETTER: ["A"-"Z"] > - | <BIT_STRING_LITERAL : <BASE_SPECIFIER >["\""](<LETTER_OR_DIGIT>((["_"])*<LETTER_OR_DIGIT>)*) ["\""] > + | <BIT_STRING_LITERAL : (<DIGIT>)*<BASE_SPECIFIER>["\""](<LETTER_OR_DIGIT_OR_STD>((["_"])*<LETTER_OR_DIGIT_OR_STD>)*)["\""] > | <#BASE_SPECIFIER:["B","O","X","b","o","x"]> + | <#STD_LOGIC:["0","1","L","H","X","Z","W","-","l","h","x","z","w"]> | < #DIGIT: ["0"-"9"] > | < #SPECIAL_CHARACTER: ["#","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","_","|"] > | < #OTHER_SPECIAL_CHARACTER: ["%","!","$","@","?","[","\\","]","^","`","{","}","~","\u00A0"-"\u00FF"]> |