changeset 132:a101853eaae0

Better scope-building. Still an error with structs and forward ref though.
author Anders Johnsen <skabet@gmail.com>
date Mon, 30 Jun 2008 16:23:52 +0200
parents 3635fc5428b1
children 9c48871eb816
files sema/DType.d sema/ScopeBuilder.d
diffstat 2 files changed, 6 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/sema/DType.d	Mon Jun 30 16:12:07 2008 +0200
+++ b/sema/DType.d	Mon Jun 30 16:23:52 2008 +0200
@@ -327,6 +327,11 @@
     {
         DType type;
         int index;
+
+        char[] toString()
+        {
+            return type.toString();
+        }
     }
 }
 
--- a/sema/ScopeBuilder.d	Mon Jun 30 16:12:07 2008 +0200
+++ b/sema/ScopeBuilder.d	Mon Jun 30 16:23:52 2008 +0200
@@ -51,13 +51,7 @@
             visitExp(d.init);
 
         DType t = typeOf(d.varType, d.env);
-        if (inFunctionBodyStack.peek())
-        {
-            auto find = d.env.find(d.varType);
-            d.sym = d.env.find(d.varType).sym;
-        }
-        else
-            d.sym = current.symbol.createMember(d.identifier.get, t);
+        d.sym = current.symbol.createAlias(d.identifier.get,d.env.find(d.varType).sym);
     }
 
     override void visitStructDecl(StructDecl s)