diff dmd/FuncDeclaration.d @ 90:39648eb578f6

more Expressions work
author Eldar Insafutdinov <e.insafutdinov@gmail.com>
date Mon, 30 Aug 2010 20:27:56 +0100
parents 23280d154c5b
children 21a53563c840
line wrap: on
line diff
--- a/dmd/FuncDeclaration.d	Mon Aug 30 19:58:14 2010 +0400
+++ b/dmd/FuncDeclaration.d	Mon Aug 30 20:27:56 2010 +0100
@@ -2369,7 +2369,7 @@
 
 			for (size_t i = 0; i < dim; i++)
 			{   
-				Expression earg = cast(Expression)arguments.data[i];
+				Expression earg = arguments[i];
 				Argument arg = Argument.getNth(tf.parameters, i);
 
 				if (arg.storageClass & (STCout | STCref))
@@ -2529,7 +2529,7 @@
 		for (size_t i = 0; i < dim; i++)
 		{
 			auto v = cast(VarDeclaration)parameters[i];
-			v.value = cast(Expression)vsave.data[i];
+			v.value = vsave[i];
 		}
 
 		if (istate && !isNested())
@@ -2541,7 +2541,7 @@
 			{   
 				if (auto v = cast(VarDeclaration)s3)
 				{	
-					v.value = cast(Expression)valueSaves.data[i];
+					v.value = valueSaves[i];
 					//printf("\trestoring [%d] %s = %s\n", i, v.toChars(), v.value ? v.value.toChars() : "");
 				}
 			}
@@ -2778,7 +2778,7 @@
 			{
 				auto vfrom = cast(VarDeclaration)parameters[i];
 				VarDeclaration vto;
-				Expression arg = cast(Expression)arguments.data[i];
+				Expression arg = arguments[i];
 				ExpInitializer ei;
 				VarExp ve;