diff ast/Exp.d @ 185:7b274cfdc1dc

Added support for array literals. Codegen is broken, though.
author Anders Johnsen <skabet@gmail.com>
date Fri, 25 Jul 2008 12:18:05 +0200
parents 8ea749b7da91
children fda35d57847e
line wrap: on
line diff
--- a/ast/Exp.d	Fri Jul 25 11:04:00 2008 +0200
+++ b/ast/Exp.d	Fri Jul 25 12:18:05 2008 +0200
@@ -36,6 +36,7 @@
     StaticArrayTypeExp,
     PointerTypeExp,
     FunctionTypeExp,
+    ArrayLiteralExp,
 }
 
 abstract class Exp
@@ -747,3 +748,22 @@
     private DType myType;
 }
 
+class ArrayLiteralExp : Exp
+{
+    this(Exp[] exps, SLoc begin, SLoc end)
+    {
+        super(ExpType.ArrayLiteralExp, begin);
+        this.exps = exps;
+        this.begin = begin;
+        this.end = end;
+    }
+
+    override DType type()
+    {
+        return exps[0].type.getAsStaticArray(exps.length);
+    }
+
+    Exp[] exps;
+    SLoc begin, end;
+}
+