Mercurial > projects > ldc
diff dmd/enum.c @ 336:aaade6ded589 trunk
[svn r357] Merged DMD 1.033
author | lindquist |
---|---|
date | Sat, 12 Jul 2008 19:38:31 +0200 |
parents | c53b6e3fe49a |
children | 1860414bf3b7 |
line wrap: on
line diff
--- a/dmd/enum.c Sat Jul 12 17:04:36 2008 +0200 +++ b/dmd/enum.c Sat Jul 12 19:38:31 2008 +0200 @@ -1,5 +1,5 @@ -// Copyright (c) 1999-2006 by Digital Mars +// Copyright (c) 1999-2008 by Digital Mars // All Rights Reserved // written by Walter Bright // http://www.digitalmars.com @@ -14,6 +14,7 @@ #include "enum.h" #include "mtype.h" #include "scope.h" +#include "declaration.h" /********************************* EnumDeclaration ****************************/ @@ -27,6 +28,7 @@ minval = 0; defaultval = 0; sinit = NULL; + isdeprecated = 0; } Dsymbol *EnumDeclaration::syntaxCopy(Dsymbol *s) @@ -57,6 +59,9 @@ return; if (!memtype) memtype = Type::tint32; + if (sc->stc & STCdeprecated) + isdeprecated = 1; + parent = sc->scopesym; memtype = memtype->semantic(loc, sc); @@ -265,11 +270,16 @@ return type; } -char *EnumDeclaration::kind() +const char *EnumDeclaration::kind() { return "enum"; } +int EnumDeclaration::isDeprecated() +{ + return isdeprecated; +} + /********************************* EnumMember ****************************/ EnumMember::EnumMember(Loc loc, Identifier *id, Expression *value) @@ -306,7 +316,7 @@ } } -char *EnumMember::kind() +const char *EnumMember::kind() { return "enum member"; }