Mercurial > projects > ldc
diff dmd2/dsymbol.h @ 1526:54b3c1394d62
Merged dmdfe 2.031.
author | Robert Clipsham <robert@octarineparrot.com> |
---|---|
date | Tue, 07 Jul 2009 02:26:11 +0100 |
parents | 638d16625da2 |
children | e4f7b5d9c68a |
line wrap: on
line diff
--- a/dmd2/dsymbol.h Mon Jul 06 23:57:27 2009 +0100 +++ b/dmd2/dsymbol.h Tue Jul 07 02:26:11 2009 +0100 @@ -1,6 +1,6 @@ // Compiler implementation of the D programming language -// Copyright (c) 1999-2008 by Digital Mars +// Copyright (c) 1999-2009 by Digital Mars // All Rights Reserved // written by Walter Bright // http://www.digitalmars.com @@ -74,15 +74,14 @@ struct DeleteDeclaration; struct HdrGenState; struct OverloadSet; +#if TARGET_NET +struct PragmaScope; +#endif #if IN_LLVM struct TypeInfoDeclaration; struct ClassInfoDeclaration; #endif -#if IN_DMD -struct Symbol; -#endif - #if IN_GCC union tree_node; typedef union tree_node TYPE; @@ -126,6 +125,7 @@ #endif unsigned char *comment; // documentation comment for this Dsymbol Loc loc; // where defined + Scope *scope; // !=NULL means context to use for semantic() Dsymbol(); Dsymbol(Identifier *); @@ -151,6 +151,7 @@ virtual const char *kind(); virtual Dsymbol *toAlias(); // resolve real symbol virtual int addMember(Scope *sc, ScopeDsymbol *s, int memnum); + virtual void setScope(Scope *sc); virtual void semantic(Scope *sc); virtual void semantic2(Scope *sc); virtual void semantic3(Scope *sc); @@ -245,7 +246,9 @@ virtual OverloadSet *isOverloadSet() { return NULL; } virtual TypeInfoDeclaration* isTypeInfoDeclaration() { return NULL; } virtual ClassInfoDeclaration* isClassInfoDeclaration() { return NULL; } - +#if TARGET_NET + virtual PragmaScope* isPragmaScope() { return NULL; } +#endif #if IN_LLVM /// Codegen traversal virtual void codegen(Ir* ir);