Mercurial > projects > ddmd
annotate dmd/TypeInfoConstDeclaration.d @ 135:af1bebfd96a4 dmd2037
dmd 2.038
author | Eldar Insafutdinov <e.insafutdinov@gmail.com> |
---|---|
date | Mon, 13 Sep 2010 22:19:42 +0100 |
parents | e28b18c23469 |
children | af724d3510d7 |
rev | line source |
---|---|
72 | 1 module dmd.TypeInfoConstDeclaration; |
2 | |
114 | 3 import dmd.common; |
72 | 4 import dmd.Type; |
0 | 5 import dmd.TypeInfoDeclaration; |
72 | 6 import dmd.Type; |
0 | 7 import dmd.backend.dt_t; |
8 import dmd.backend.Util; | |
72 | 9 import dmd.backend.TYM; |
10 | |
93
df6d0f967680
implemented a whole bunch of methods to make phobos 2.035 compile
Trass3r
parents:
73
diff
changeset
|
11 version(DMDV2) |
0 | 12 class TypeInfoConstDeclaration : TypeInfoDeclaration |
13 { | |
14 this(Type tinfo) | |
15 { | |
16 super(tinfo, 0); | |
73 | 17 type = Type.typeinfoconst.type; |
0 | 18 } |
19 | |
72 | 20 override void toDt(dt_t** pdt) |
0 | 21 { |
22 //printf("TypeInfoConstDeclaration.toDt() %s\n", toChars()); | |
23 dtxoff(pdt, Type.typeinfoconst.toVtblSymbol(), 0, TYnptr); // vtbl for TypeInfo_Const | |
24 dtdword(pdt, 0); // monitor | |
25 Type tm = tinfo.mutableOf(); | |
26 tm = tm.merge(); | |
27 tm.getTypeInfo(null); | |
28 dtxoff(pdt, tm.vtinfo.toSymbol(), 0, TYnptr); | |
29 } | |
30 } | |
31 |