Mercurial > projects > ldc
diff dmd/mtype.c @ 486:a34078905d01
Added pragma(llvmdc, "string") for misc per-module compiler configuration, currently "string" can only be "verbose" which forces -vv for module it appears in.
Reimplemented support for nested functions/class using a new approach.
Added error on taking address of intrinsic.
Fixed problems with the ->syntaxCopy of TypeFunction delegate exp.
Removed DtoDType and replaced all uses with ->toBasetype() instead.
Removed unused inplace stuff.
Fixed a bunch of issues in the runtime unittests, not complete yet.
Added mini tests.
author | Tomas Lindquist Olsen <tomas.l.olsen@gmail.com> |
---|---|
date | Sun, 10 Aug 2008 08:37:38 +0200 |
parents | cc40db549aea |
children | 822774a94750 |
line wrap: on
line diff
--- a/dmd/mtype.c Sat Aug 09 09:03:52 2008 +0200 +++ b/dmd/mtype.c Sun Aug 10 08:37:38 2008 +0200 @@ -2651,9 +2651,10 @@ this->varargs = varargs; this->linkage = linkage; this->inuse = 0; - this->llvmRetInPtr = false; - this->llvmUsesThis = false; - this->llvmRetAttrs = 0; + this->retInPtr = false; + this->usesThis = false; + this->usesNest = false; + this->retAttrs = 0; } Type *TypeFunction::syntaxCopy() @@ -2661,9 +2662,10 @@ Type *treturn = next ? next->syntaxCopy() : NULL; Arguments *params = Argument::arraySyntaxCopy(parameters); TypeFunction *t = new TypeFunction(params, treturn, varargs, linkage); - t->llvmRetInPtr = llvmRetInPtr; - t->llvmUsesThis = llvmUsesThis; - t->llvmRetAttrs = llvmRetAttrs; + t->retInPtr = retInPtr; + t->usesThis = usesThis; + t->usesNest = usesNest; + t->retAttrs = retAttrs; return t; } @@ -3813,6 +3815,11 @@ return sym->toChars(); } +Type *TypeEnum::syntaxCopy() +{ + return this; +} + Type *TypeEnum::semantic(Loc loc, Scope *sc) { sym->semantic(sc);