Mercurial > projects > ldc
comparison dmd/dsymbol.h @ 1630:44b145be2ef5
Merge dmd 1.056.
author | Robert Clipsham <robert@octarineparrot.com> |
---|---|
date | Sat, 06 Feb 2010 15:53:52 +0000 |
parents | def7a1d494fd |
children | 9bf06e02070b |
comparison
equal
deleted
inserted
replaced
1629:b07d683ba4d0 | 1630:44b145be2ef5 |
---|---|
19 #include "stringtable.h" | 19 #include "stringtable.h" |
20 | 20 |
21 #include "mars.h" | 21 #include "mars.h" |
22 #include "arraytypes.h" | 22 #include "arraytypes.h" |
23 | 23 |
24 // llvm | 24 #if IN_LLVM |
25 #include "../ir/irdsymbol.h" | 25 #include "../ir/irdsymbol.h" |
26 #endif | |
26 | 27 |
27 struct Identifier; | 28 struct Identifier; |
28 struct Scope; | 29 struct Scope; |
29 struct DsymbolTable; | 30 struct DsymbolTable; |
30 struct Declaration; | 31 struct Declaration; |
49 struct InvariantDeclaration; | 50 struct InvariantDeclaration; |
50 struct UnitTestDeclaration; | 51 struct UnitTestDeclaration; |
51 struct NewDeclaration; | 52 struct NewDeclaration; |
52 struct VarDeclaration; | 53 struct VarDeclaration; |
53 struct AttribDeclaration; | 54 struct AttribDeclaration; |
55 #if IN_DMD | |
56 struct Symbol; | |
57 #endif | |
54 struct Package; | 58 struct Package; |
55 struct Module; | 59 struct Module; |
56 struct Import; | 60 struct Import; |
57 struct Type; | 61 struct Type; |
58 struct TypeTuple; | 62 struct TypeTuple; |
74 struct ClassInfoDeclaration; | 78 struct ClassInfoDeclaration; |
75 struct OverloadSet; | 79 struct OverloadSet; |
76 #if TARGET_NET | 80 #if TARGET_NET |
77 struct PragmaScope; | 81 struct PragmaScope; |
78 #endif | 82 #endif |
79 #if IN_DMD | |
80 struct Symbol; | |
81 #endif | |
82 #if IN_GCC | 83 #if IN_GCC |
83 union tree_node; | 84 union tree_node; |
84 typedef union tree_node TYPE; | 85 typedef union tree_node TYPE; |
85 #else | 86 #else |
86 struct TYPE; | 87 struct TYPE; |
107 PROTprotected, | 108 PROTprotected, |
108 PROTpublic, | 109 PROTpublic, |
109 PROTexport, | 110 PROTexport, |
110 }; | 111 }; |
111 | 112 |
113 /* State of symbol in winding its way through the passes of the compiler | |
114 */ | |
115 enum PASS | |
116 { | |
117 PASSinit, // initial state | |
118 PASSsemantic, // semantic() started | |
119 PASSsemanticdone, // semantic() done | |
120 PASSsemantic2, // semantic2() run | |
121 PASSsemantic3, // semantic3() started | |
122 PASSsemantic3done, // semantic3() done | |
123 PASSobj, // toObjFile() run | |
124 }; | |
112 | 125 |
113 struct Dsymbol : Object | 126 struct Dsymbol : Object |
114 { | 127 { |
115 Identifier *ident; | 128 Identifier *ident; |
116 Identifier *c_ident; | 129 Identifier *c_ident; |