comparison dmd2/attrib.h @ 1577:e4f7b5d9c68a

DMD 2.032 Merge.
author Robert Clipsham <robert@octarineparrot.com>
date Tue, 08 Sep 2009 10:07:56 +0100
parents 54b3c1394d62
children
comparison
equal deleted inserted replaced
1576:4551475bc6b6 1577:e4f7b5d9c68a
34 Array *decl; // array of Dsymbol's 34 Array *decl; // array of Dsymbol's
35 35
36 AttribDeclaration(Array *decl); 36 AttribDeclaration(Array *decl);
37 virtual Array *include(Scope *sc, ScopeDsymbol *s); 37 virtual Array *include(Scope *sc, ScopeDsymbol *s);
38 int addMember(Scope *sc, ScopeDsymbol *s, int memnum); 38 int addMember(Scope *sc, ScopeDsymbol *s, int memnum);
39 void setScopeNewSc(Scope *sc,
40 unsigned newstc, enum LINK linkage, enum PROT protection, int explictProtection,
41 unsigned structalign);
39 void semanticNewSc(Scope *sc, 42 void semanticNewSc(Scope *sc,
40 unsigned newstc, enum LINK linkage, enum PROT protection, int explictProtection, 43 unsigned newstc, enum LINK linkage, enum PROT protection, int explictProtection,
41 unsigned structalign); 44 unsigned structalign);
42 void semantic(Scope *sc); 45 void semantic(Scope *sc);
43 void semantic2(Scope *sc); 46 void semantic2(Scope *sc);
67 { 70 {
68 unsigned stc; 71 unsigned stc;
69 72
70 StorageClassDeclaration(unsigned stc, Array *decl); 73 StorageClassDeclaration(unsigned stc, Array *decl);
71 Dsymbol *syntaxCopy(Dsymbol *s); 74 Dsymbol *syntaxCopy(Dsymbol *s);
75 void setScope(Scope *sc);
72 void semantic(Scope *sc); 76 void semantic(Scope *sc);
73 void toCBuffer(OutBuffer *buf, HdrGenState *hgs); 77 void toCBuffer(OutBuffer *buf, HdrGenState *hgs);
74 78
75 static void stcToCBuffer(OutBuffer *buf, int stc); 79 static void stcToCBuffer(OutBuffer *buf, int stc);
76 }; 80 };
79 { 83 {
80 enum LINK linkage; 84 enum LINK linkage;
81 85
82 LinkDeclaration(enum LINK p, Array *decl); 86 LinkDeclaration(enum LINK p, Array *decl);
83 Dsymbol *syntaxCopy(Dsymbol *s); 87 Dsymbol *syntaxCopy(Dsymbol *s);
88 void setScope(Scope *sc);
84 void semantic(Scope *sc); 89 void semantic(Scope *sc);
85 void semantic3(Scope *sc); 90 void semantic3(Scope *sc);
86 void toCBuffer(OutBuffer *buf, HdrGenState *hgs); 91 void toCBuffer(OutBuffer *buf, HdrGenState *hgs);
87 char *toChars(); 92 char *toChars();
88 }; 93 };
91 { 96 {
92 enum PROT protection; 97 enum PROT protection;
93 98
94 ProtDeclaration(enum PROT p, Array *decl); 99 ProtDeclaration(enum PROT p, Array *decl);
95 Dsymbol *syntaxCopy(Dsymbol *s); 100 Dsymbol *syntaxCopy(Dsymbol *s);
101 void setScope(Scope *sc);
96 void semantic(Scope *sc); 102 void semantic(Scope *sc);
97 void toCBuffer(OutBuffer *buf, HdrGenState *hgs); 103 void toCBuffer(OutBuffer *buf, HdrGenState *hgs);
98 104
99 static void protectionToCBuffer(OutBuffer *buf, enum PROT protection); 105 static void protectionToCBuffer(OutBuffer *buf, enum PROT protection);
100 }; 106 };
103 { 109 {
104 unsigned salign; 110 unsigned salign;
105 111
106 AlignDeclaration(Loc loc, unsigned sa, Array *decl); 112 AlignDeclaration(Loc loc, unsigned sa, Array *decl);
107 Dsymbol *syntaxCopy(Dsymbol *s); 113 Dsymbol *syntaxCopy(Dsymbol *s);
114 void setScope(Scope *sc);
108 void semantic(Scope *sc); 115 void semantic(Scope *sc);
109 void toCBuffer(OutBuffer *buf, HdrGenState *hgs); 116 void toCBuffer(OutBuffer *buf, HdrGenState *hgs);
110 }; 117 };
111 118
112 struct AnonDeclaration : AttribDeclaration 119 struct AnonDeclaration : AttribDeclaration
126 Expressions *args; // array of Expression's 133 Expressions *args; // array of Expression's
127 134
128 PragmaDeclaration(Loc loc, Identifier *ident, Expressions *args, Array *decl); 135 PragmaDeclaration(Loc loc, Identifier *ident, Expressions *args, Array *decl);
129 Dsymbol *syntaxCopy(Dsymbol *s); 136 Dsymbol *syntaxCopy(Dsymbol *s);
130 void semantic(Scope *sc); 137 void semantic(Scope *sc);
138 void setScope(Scope *sc);
131 int oneMember(Dsymbol **ps); 139 int oneMember(Dsymbol **ps);
132 void toCBuffer(OutBuffer *buf, HdrGenState *hgs); 140 void toCBuffer(OutBuffer *buf, HdrGenState *hgs);
133 const char *kind(); 141 const char *kind();
134 142
135 #if IN_DMD 143 #if IN_DMD