Mercurial > projects > ldc
comparison dmd/mtype.h @ 1364:46f6365a50d7
Added IrTypeFunction and IrTypeDelegate and eliminated IrDType. This means the Type::ir field can be removed. It's the final part needed for the move to a slightly more sane type system. Now the whole thing just needs to be cleaned up :P
Added -v-cg switch, which right now just prints "codegen: module.name (module/name.d)" to stdout, this can really help figuring out where, in some complex build command, things go wrong.
author | Tomas Lindquist Olsen <tomas.l.olsen gmail com> |
---|---|
date | Sat, 16 May 2009 18:19:52 +0200 |
parents | 465a77c904d4 |
children | 8026319762be |
comparison
equal
deleted
inserted
replaced
1363:b7c8506e1eed | 1364:46f6365a50d7 |
---|---|
20 | 20 |
21 #include "arraytypes.h" | 21 #include "arraytypes.h" |
22 #include "expression.h" | 22 #include "expression.h" |
23 | 23 |
24 #if IN_LLVM | 24 #if IN_LLVM |
25 // llvm | |
26 #include "../ir/irdtype.h" | |
27 #include "../ir/irfuncty.h" | 25 #include "../ir/irfuncty.h" |
28 namespace llvm { class Type; } | 26 namespace llvm { class Type; } |
29 struct Ir; | 27 class Ir; |
30 | |
31 class IrType; | 28 class IrType; |
32 #endif | 29 #endif |
33 | 30 |
34 struct Scope; | 31 struct Scope; |
35 struct Identifier; | 32 struct Identifier; |
282 | 279 |
283 // For eliminating dynamic_cast | 280 // For eliminating dynamic_cast |
284 virtual TypeBasic *isTypeBasic(); | 281 virtual TypeBasic *isTypeBasic(); |
285 | 282 |
286 #if IN_LLVM | 283 #if IN_LLVM |
287 // LDC | |
288 IrDType ir; | |
289 static Ir* sir; | 284 static Ir* sir; |
290 | |
291 IrType* irtype; | 285 IrType* irtype; |
292 #endif | 286 #endif |
293 }; | 287 }; |
294 | 288 |
295 struct TypeBasic : Type | 289 struct TypeBasic : Type |