diff sema/Visitor.d @ 77:13eea2c4e60d new_gen

Now able of --ast-dump-code with Pointer types and also codeGen int* x;
author Anders Johnsen <skabet@gmail.com>
date Fri, 02 May 2008 16:37:13 +0200
parents 381975d76baf
children 81813366ef92
line wrap: on
line diff
--- a/sema/Visitor.d	Fri May 02 15:48:57 2008 +0200
+++ b/sema/Visitor.d	Fri May 02 16:37:13 2008 +0200
@@ -78,6 +78,8 @@
                 return visitCastExp(cast(CastExp)exp);
             case ExpType.Identifier:
                 return visitIdentifier(cast(Identifier)exp);
+            case ExpType.PointerIdentifier:
+                return visitPointerIdentifier(cast(PointerIdentifier)exp);
             case ExpType.MemberReference:
                 return visitMemberReference(cast(MemberReference)exp);
             default:
@@ -273,6 +275,16 @@
             return ExpT.init;
     }
 
+    ExpT visitPointerIdentifier(PointerIdentifier exp)
+    {
+        visitExp(exp.pointerOf);
+
+        static if (is(ExpT == void))
+            return;
+        else
+            return ExpT.init;
+    }
+
     ExpT visitMemberReference(MemberReference mem)
     {
         visitExp(mem.target);