diff dmd/AssignExp.d @ 84:be2ab491772e

Expressions -> Vector!Expression
author Eldar Insafutdinov <e.insafutdinov@gmail.com>
date Mon, 30 Aug 2010 16:12:19 +0100
parents 2e2a5c3f943a
children 39648eb578f6
line wrap: on
line diff
--- a/dmd/AssignExp.d	Mon Aug 30 18:42:04 2010 +0400
+++ b/dmd/AssignExp.d	Mon Aug 30 16:12:19 2010 +0100
@@ -107,9 +107,9 @@
 				if (search_function(ad, Id.indexass))
 				{	
 					Expression e = new DotIdExp(loc, ae.e1, Id.indexass);
-					Expressions a = cast(Expressions)ae.arguments.copy();
+					auto a = ae.arguments.copy();
 
-					a.insert(0, cast(void*)e2);
+					a.insert(0, e2);
 					e = new CallExp(loc, e, a);
 					e = e.semantic(sc);
 					return e;
@@ -160,12 +160,12 @@
 					Expression e = new DotIdExp(loc, ae.e1, Id.sliceass);
 					Expressions a = new Expressions();
 
-					a.push(cast(void*)e2);
+					a.push(e2);
 					if (ae.lwr)
 					{   
-						a.push(cast(void*)ae.lwr);
+						a.push(ae.lwr);
 						assert(ae.upr);
-						a.push(cast(void*)ae.upr);
+						a.push(ae.upr);
 					}
 					else
 						assert(!ae.upr);
@@ -203,14 +203,14 @@
 			}
 			else
 			{   
-				Expressions exps = new Expressions;
+				auto exps = new Expressions;
 				exps.setDim(dim);
 
 				for (int i = 0; i < dim; i++)
 				{	
-					Expression ex1 = cast(Expression)tup1.exps.data[i];
-					Expression ex2 = cast(Expression)tup2.exps.data[i];
-					exps.data[i] = cast(void*) new AssignExp(loc, ex1, ex2);
+					auto ex1 = tup1.exps[i];
+					auto ex2 = tup2.exps[i];
+					exps[i] = new AssignExp(loc, ex1, ex2);
 				}
 				Expression e = new TupleExp(loc, exps);
 				e = e.semantic(sc);