diff dmd/DivAssignExp.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/DivAssignExp.d	Sun Sep 05 15:32:22 2010 +0400
+++ b/dmd/DivAssignExp.d	Thu Sep 09 22:51:44 2010 +0100
@@ -17,6 +17,7 @@
 import dmd.CommaExp;
 import dmd.RealExp;
 import dmd.AssignExp;
+import dmd.ArrayLengthExp;
 
 import dmd.backend.elem;
 import dmd.backend.OPER;
@@ -42,6 +43,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);
@@ -104,7 +114,7 @@
 		AssignExp_buildArrayIdent(buf, arguments, "Div");
 	}
 	
-    override Expression buildArrayLoop(Arguments fparams)
+    override Expression buildArrayLoop(Parameters fparams)
 	{
 		return AssignExp_buildArrayLoop!(typeof(this))(fparams);
 	}