diff dmd/TypePointer.d @ 135:af1bebfd96a4 dmd2037

dmd 2.038
author Eldar Insafutdinov <e.insafutdinov@gmail.com>
date Mon, 13 Sep 2010 22:19:42 +0100
parents e28b18c23469
children e3afd1303184
line wrap: on
line diff
--- a/dmd/TypePointer.d	Sat Sep 11 13:03:39 2010 +0100
+++ b/dmd/TypePointer.d	Mon Sep 13 22:19:42 2010 +0100
@@ -108,7 +108,7 @@
 			TypePointer tp = cast(TypePointer)to;
 			assert(tp.next);
 
-			if (!(next.mod == tp.next.mod || tp.next.mod == MOD.MODconst))
+			if (!MODimplicitConv(next.mod, tp.next.mod))
 				return MATCH.MATCHnomatch;        // not const-compatible
 
 			/* Alloc conversion to void[]
@@ -145,9 +145,7 @@
 	version (LOGDEFAULTINIT) {
 		printf("TypePointer::defaultInit() '%s'\n", toChars());
 	}
-		Expression e = new NullExp(loc);
-		e.type = this;
-		return e;
+		return new NullExp(loc, this);
 	}
 	
     override bool isZeroInit(Loc loc)