diff options
Diffstat (limited to 'colm/compiler.h')
-rw-r--r-- | colm/compiler.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/colm/compiler.h b/colm/compiler.h index 1b03504f..bf465dc6 100644 --- a/colm/compiler.h +++ b/colm/compiler.h @@ -281,6 +281,9 @@ struct LangEl : public DListEl<LangEl> bool parseStop; bool isEOF; + /* For a list or a repeat. Defaults to right recursive. */ + bool leftRecursive; + LangEl *repeatOf; /* Productions from the language element if it is a non-terminal. */ @@ -739,7 +742,7 @@ struct Compiler void printFirstSets(); LangEl *makeRepeatProd( const InputLoc &loc, Namespace *nspace, - const String &repeatName, UniqueType *ut ); + const String &repeatName, UniqueType *ut, bool left ); LangEl *makeListProd( const InputLoc &loc, Namespace *nspace, const String &listName, UniqueType *ut ); LangEl *makeOptProd( const InputLoc &loc, Namespace *nspace, |