diff dmd/TraitsExp.d @ 113:3482c73a991b

More cleanup for arrays
author Eldar Insafutdinov <e.insafutdinov@gmail.com>
date Tue, 31 Aug 2010 23:57:32 +0100
parents ae5b11064a9a
children e28b18c23469
line wrap: on
line diff
--- a/dmd/TraitsExp.d	Wed Sep 01 00:14:27 2010 +0200
+++ b/dmd/TraitsExp.d	Tue Aug 31 23:57:32 2010 +0100
@@ -97,7 +97,7 @@
 		{
 			return `
 				for (size_t i = 0; i < dim; i++)
-				{   Type t = getType(cast(Object)args.data[i]);
+				{   Type t = getType(args[i]);
 					if (!t)
 						goto Lfalse;
 					if (!(`~cond~`))
@@ -112,7 +112,7 @@
 		string ISDSYMBOL(string cond)
 		{
 			return `for (size_t i = 0; i < dim; i++)
-			{   Dsymbol s = getDsymbol(cast(Object)args.data[i]);
+			{   Dsymbol s = getDsymbol(args[i]);
 				if (!s)
 					goto Lfalse;
 				if (!(`~cond~`))
@@ -177,8 +177,8 @@
 		{
 			if (dim != 2)
 				goto Ldimerror;
-			Object o_ = cast(Object)args.data[0];
-			Expression e = isExpression(cast(Object)args.data[1]);
+			auto o_ = args[0];
+			Expression e = isExpression(args[1]);
 			if (!e)
 			{   error("expression expected as second argument of __traits %s", ident.toChars());
 				goto Lfalse;
@@ -188,7 +188,7 @@
 			{   error("string expected as second argument of __traits %s instead of %s", ident.toChars(), e.toChars());
 				goto Lfalse;
 			}
-			StringExp se = cast(StringExp)e;
+			auto se = cast(StringExp)e;
 			se = se.toUTF8(sc);
 			if (se.sz != 1)
 			{   error("string must be chars");
@@ -267,7 +267,7 @@
 		{
 			if (dim != 1)
 				goto Ldimerror;
-			Object o_ = cast(Object)args.data[0];
+			Object o_ = args[0];
 			Dsymbol s = getDsymbol(o_);
 			ClassDeclaration cd;
 			if (!s || (cd = s.isClassDeclaration()) is null)
@@ -281,7 +281,7 @@
 		{
 			if (dim != 1)
 				goto Ldimerror;
-			Object o_ = cast(Object)args.data[0];
+			Object o_ = args[0];
 			Dsymbol s = getDsymbol(o_);
 			ScopeDsymbol sd;
 			if (!s)
@@ -339,7 +339,7 @@
 				goto Lfalse;
 
 			for (size_t i = 0; i < dim; i++)
-			{   Object o_ = cast(Object)args.data[i];
+			{   Object o_ = args[i];
 				Expression e;
 
 				uint errors = global.errors;
@@ -375,8 +375,8 @@
 			if (dim != 2)
 				goto Ldimerror;
 			TemplateInstance.semanticTiargs(loc, sc, args, 0);
-			Object o1 = cast(Object)args.data[0];
-			Object o2 = cast(Object)args.data[1];
+			Object o1 = args[0];
+			Object o2 = args[1];
 			Dsymbol s1 = getDsymbol(o1);
 			Dsymbol s2 = getDsymbol(o2);
 
@@ -447,7 +447,7 @@
 			for (int i = 0; i < args.dim; i++)
 			{
 				buf.writeByte(',');
-				Object oarg = cast(Object)args.data[i];
+				Object oarg = args[i];
 				ObjectToCBuffer(buf, hgs, oarg);
 			}
 		}