diff -r 05de34f712fe -r 219b49bf4a03 src/compiler/AST.h --- a/src/compiler/AST.h Sat Jan 12 16:35:26 2013 -0800 +++ b/src/compiler/AST.h Sun Jan 27 17:34:30 2013 -0800 @@ -873,11 +873,13 @@ ScopedRoot name; Expression *expr; SourcePosition pos; + ConstantSymbol *sym; Entry(Handle name, Expression *expr, const SourcePosition &pos) : name(name), expr(expr), - pos(pos) + pos(pos), + sym(NULL) { } }; @@ -885,17 +887,18 @@ typedef PoolList EntryList; public: - EnumStatement(const SourcePosition &pos, Handle name, EntryList *entries) + EnumStatement(const SourcePosition &pos, TokenKind visibility, Handle name, EntryList *entries) : Statement(pos), name_(name), sym_(NULL), - entries_(entries) + entries_(entries), + visibility_(visibility) { } DECLARE_NODE(EnumStatement); - String *name() const { + Handle name() const { return name_; } EntryList *entries() const { @@ -908,9 +911,13 @@ TypeSymbol *sym() const { return sym_; } + TokenKind visibility() const { + return visibility_; + } private: EntryList *entries_; + TokenKind visibility_; }; class IncDecExpression : public Expression