diff dmd/MulAssignExp.d @ 130:60bb0fe4563e

dmdfe 2.037 first main iteration
author Eldar Insafutdinov <e.insafutdinov@gmail.com>
date Thu, 09 Sep 2010 22:51:44 +0100
parents 9e39c7de8438
children e3afd1303184
line wrap: on
line diff
--- a/dmd/MulAssignExp.d	Sun Sep 05 15:32:22 2010 +0400
+++ b/dmd/MulAssignExp.d	Thu Sep 09 22:51:44 2010 +0100
@@ -14,6 +14,7 @@
 import dmd.TOK;
 import dmd.Type;
 import dmd.TY;
+import dmd.ArrayLengthExp;
 
 import dmd.backend.elem;
 import dmd.backend.OPER;
@@ -38,6 +39,15 @@
 		if (e)
 			return e;
 
+version(DMDV2) {
+        if (e1.op == TOK.TOKarraylength)
+        {
+	        e = ArrayLengthExp.rewriteOpAssign(this);
+	        e = e.semantic(sc);
+	        return e;
+        }
+}
+        
 		if (e1.op == TOKslice)
 		{	// T[] -= ...
 			typeCombine(sc);
@@ -96,7 +106,7 @@
 		AssignExp_buildArrayIdent(buf, arguments, "Mul");
 	}
 	
-    override Expression buildArrayLoop(Arguments fparams)
+    override Expression buildArrayLoop(Parameters fparams)
 	{
 		return AssignExp_buildArrayLoop!(typeof(this))(fparams);
 	}