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