Mercurial > projects > ldc
diff dmd/declaration.h @ 50:6fcc08a4d406 trunk
[svn r54] Added support for nested delegates referencing parent's stack variables.
Replaced tester.sh with a version written in D.
A few bugfixes.
author | lindquist |
---|---|
date | Mon, 22 Oct 2007 15:40:56 +0200 |
parents | 8b0e809563df |
children | a9d29e9f1fed |
line wrap: on
line diff
--- a/dmd/declaration.h Fri Oct 19 17:43:46 2007 +0200 +++ b/dmd/declaration.h Mon Oct 22 15:40:56 2007 +0200 @@ -15,6 +15,8 @@ #pragma once #endif /* __DMC__ */ +#include <set> + #include "dsymbol.h" #include "lexer.h" #include "mtype.h" @@ -125,8 +127,8 @@ Declaration *isDeclaration() { return this; } - virtual void toObjFile(); // compile to .obj file - + virtual void toObjFile(); // compile to .obj file + bool llvmTouched; }; @@ -255,6 +257,9 @@ // Eliminate need for dynamic_cast VarDeclaration *isVarDeclaration() { return (VarDeclaration *)this; } + + // LLVMDC + int llvmNestedIndex; }; /**************************************************************/ @@ -514,6 +519,8 @@ bool llvmQueued; llvm::Value* llvmThisVar; + std::set<VarDeclaration*> llvmNestedVars; + llvm::Value* llvmNested; }; struct FuncAliasDeclaration : FuncDeclaration