Mercurial > projects > ldc
comparison dmd/declaration.h @ 1621:fb2e6707ad17
Merge DMD r314+r315: bugzilla 2029 Typesafe variadic functions don't...
Both DMD revisions are for fixing bugzilla 2029 (Typesafe variadic
functions don't work in CTFE).
The DMD r314 commit message is:
bugzilla 2029 (Typesafe variadic functions don't work in CTFE
The DMD r315 commit message is:
bugzilla 2029 - try again
---
dmd/constfold.c | 11 ++++-
dmd/declaration.c | 21 +++++++++-
dmd/declaration.h | 10 ++++-
dmd/expression.c | 1 +
dmd/interpret.c | 111 +++++++++++++++++++++++++++++++++++++++++++++--------
dmd/mars.h | 2 +-
dmd/mtype.c | 2 +-
7 files changed, 135 insertions(+), 23 deletions(-)
author | Leandro Lucarella <llucax@gmail.com> |
---|---|
date | Wed, 06 Jan 2010 15:18:22 -0300 |
parents | c61782a76dff |
children | 44b145be2ef5 |
comparison
equal
deleted
inserted
replaced
1620:0333945a915e | 1621:fb2e6707ad17 |
---|---|
77 STCtls = 0x8000000, // thread local | 77 STCtls = 0x8000000, // thread local |
78 STCalias = 0x10000000, // alias parameter | 78 STCalias = 0x10000000, // alias parameter |
79 STCshared = 0x20000000, // accessible from multiple threads | 79 STCshared = 0x20000000, // accessible from multiple threads |
80 STCgshared = 0x40000000, // accessible from multiple threads | 80 STCgshared = 0x40000000, // accessible from multiple threads |
81 // but not typed as "shared" | 81 // but not typed as "shared" |
82 STC_TYPECTOR = (STCconst | STCimmutable | STCshared), | 82 STCwild = 0x80000000, // for "wild" type constructor |
83 }; | 83 STC_TYPECTOR = (STCconst | STCimmutable | STCshared | STCwild), |
84 }; | |
85 | |
86 #define STCproperty 0x100000000LL | |
87 #define STCsafe 0x200000000LL | |
88 #define STCtrusted 0x400000000LL | |
89 #define STCsystem 0x800000000LL | |
90 #define STCctfe 0x1000000000LL // can be used in CTFE, even if it is static | |
84 | 91 |
85 struct Match | 92 struct Match |
86 { | 93 { |
87 int count; // number of matches found | 94 int count; // number of matches found |
88 MATCH last; // match level of lastf | 95 MATCH last; // match level of lastf |
288 #endif | 295 #endif |
289 int needThis(); | 296 int needThis(); |
290 int isImportedSymbol(); | 297 int isImportedSymbol(); |
291 int isDataseg(); | 298 int isDataseg(); |
292 int isThreadlocal(); | 299 int isThreadlocal(); |
300 int isCTFE(); | |
293 int hasPointers(); | 301 int hasPointers(); |
294 #if DMDV2 | 302 #if DMDV2 |
295 int canTakeAddressOf(); | 303 int canTakeAddressOf(); |
296 int needsAutoDtor(); | 304 int needsAutoDtor(); |
297 #endif | 305 #endif |