Mercurial > projects > ldc
comparison dmd/declaration.h @ 156:ccd07d9f2ce9 trunk
[svn r172] moving all IR state previously stored in Dsymbol into IrDsymbol and a Dsymbol->IrDsymbol map
author | ChristianK |
---|---|
date | Thu, 01 May 2008 13:05:53 +0200 |
parents | 7f92f477ff53 |
children | 5acec6b2eef8 |
comparison
equal
deleted
inserted
replaced
155:7f92f477ff53 | 156:ccd07d9f2ce9 |
---|---|
18 #include <set> | 18 #include <set> |
19 | 19 |
20 #include "dsymbol.h" | 20 #include "dsymbol.h" |
21 #include "lexer.h" | 21 #include "lexer.h" |
22 #include "mtype.h" | 22 #include "mtype.h" |
23 | |
24 namespace llvm { | |
25 class Value; | |
26 } | |
27 struct IrVar; | |
28 struct IrGlobal; | |
29 struct IrLocal; | |
30 struct IrField; | |
31 | 23 |
32 struct Expression; | 24 struct Expression; |
33 struct Statement; | 25 struct Statement; |
34 struct LabelDsymbol; | 26 struct LabelDsymbol; |
35 struct Initializer; | 27 struct Initializer; |
261 | 253 |
262 // Eliminate need for dynamic_cast | 254 // Eliminate need for dynamic_cast |
263 VarDeclaration *isVarDeclaration() { return (VarDeclaration *)this; } | 255 VarDeclaration *isVarDeclaration() { return (VarDeclaration *)this; } |
264 | 256 |
265 // LLVMDC | 257 // LLVMDC |
266 IrGlobal* irGlobal; | |
267 IrLocal* irLocal; | |
268 IrField* irField; | |
269 bool needsStorage; | 258 bool needsStorage; |
270 | |
271 IrVar* getIrVar(); | |
272 llvm::Value*& getIrValue(); | |
273 }; | 259 }; |
274 | 260 |
275 /**************************************************************/ | 261 /**************************************************************/ |
276 | 262 |
277 // This is a shell around a back end symbol | 263 // This is a shell around a back end symbol |