Mercurial > projects > ldc
comparison dmd2/declaration.h @ 921:75c53f8f67a4
Apply StaticStructInit changes from [913] to dmd2/
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Tue, 03 Feb 2009 18:00:17 +0100 |
parents | 340acf1535d0 |
children | 0749c0757a43 |
comparison
equal
deleted
inserted
replaced
920:545f54041d91 | 921:75c53f8f67a4 |
---|---|
282 unsigned offset2; | 282 unsigned offset2; |
283 }; | 283 }; |
284 | 284 |
285 /**************************************************************/ | 285 /**************************************************************/ |
286 | 286 |
287 // This is a shell around a back end symbol | 287 // LDC uses this to denote static struct initializers |
288 | 288 |
289 struct SymbolDeclaration : Declaration | 289 struct StaticStructInitDeclaration : Declaration |
290 { | 290 { |
291 Symbol *sym; | |
292 StructDeclaration *dsym; | 291 StructDeclaration *dsym; |
293 | 292 |
294 SymbolDeclaration(Loc loc, Symbol *s, StructDeclaration *dsym); | 293 StaticStructInitDeclaration(Loc loc, StructDeclaration *dsym); |
295 | 294 |
296 Symbol *toSymbol(); | 295 Symbol *toSymbol(); |
297 | 296 |
298 // Eliminate need for dynamic_cast | 297 // Eliminate need for dynamic_cast |
299 SymbolDeclaration *isSymbolDeclaration() { return (SymbolDeclaration *)this; } | 298 StaticStructInitDeclaration *isStaticStructInitDeclaration() { return (StaticStructInitDeclaration *)this; } |
300 }; | 299 }; |
301 | 300 |
302 struct ClassInfoDeclaration : VarDeclaration | 301 struct ClassInfoDeclaration : VarDeclaration |
303 { | 302 { |
304 ClassDeclaration *cd; | 303 ClassDeclaration *cd; |