comparison dmd/dsymbol.h @ 100:5071469303d4 trunk

[svn r104] TONS OF FIXES. Split up declaration, constant initializer gen and definition for globals, structs, classes and functions. Improved ClassInfo support (not complete), not in vtable yet. Fixed a bunch of forward reference problems. Much more. Major commit! :)
author lindquist
date Fri, 16 Nov 2007 08:21:47 +0100
parents c53b6e3fe49a
children 027b8d8b71ec
comparison
equal deleted inserted replaced
99:a676a7743642 100:5071469303d4
65 struct SymbolDeclaration; 65 struct SymbolDeclaration;
66 struct Expression; 66 struct Expression;
67 struct DeleteDeclaration; 67 struct DeleteDeclaration;
68 struct HdrGenState; 68 struct HdrGenState;
69 struct TypeInfoDeclaration; 69 struct TypeInfoDeclaration;
70 struct ClassInfoDeclaration;
70 71
71 #if IN_GCC 72 #if IN_GCC
72 union tree_node; 73 union tree_node;
73 typedef union tree_node TYPE; 74 typedef union tree_node TYPE;
74 #else 75 #else
210 virtual DeleteDeclaration *isDeleteDeclaration() { return NULL; } 211 virtual DeleteDeclaration *isDeleteDeclaration() { return NULL; }
211 #endif 212 #endif
212 virtual SymbolDeclaration *isSymbolDeclaration() { return NULL; } 213 virtual SymbolDeclaration *isSymbolDeclaration() { return NULL; }
213 virtual AttribDeclaration *isAttribDeclaration() { return NULL; } 214 virtual AttribDeclaration *isAttribDeclaration() { return NULL; }
214 virtual TypeInfoDeclaration* isTypeInfoDeclaration() { return NULL; } 215 virtual TypeInfoDeclaration* isTypeInfoDeclaration() { return NULL; }
216 virtual ClassInfoDeclaration* isClassInfoDeclaration() { return NULL; }
215 217
216 // llvm stuff 218 // llvm stuff
217 int llvmInternal; 219 int llvmInternal;
218 char* llvmInternal1; 220 char* llvmInternal1;
219 char* llvmInternal2; 221 char* llvmInternal2;
220 222
221 llvm::Value* llvmValue; 223 llvm::Value* llvmValue;
222 Module* llvmDModule; 224 Module* llvmDModule;
225
226 bool llvmTouched;
223 }; 227 };
224 228
225 // Dsymbol that generates a scope 229 // Dsymbol that generates a scope
226 230
227 struct ScopeDsymbol : Dsymbol 231 struct ScopeDsymbol : Dsymbol