diff dmd/declaration.c @ 50:6fcc08a4d406 trunk

[svn r54] Added support for nested delegates referencing parent's stack variables. Replaced tester.sh with a version written in D. A few bugfixes.
author lindquist
date Mon, 22 Oct 2007 15:40:56 +0200
parents 8b0e809563df
children b706170e24a9
line wrap: on
line diff
--- a/dmd/declaration.c	Fri Oct 19 17:43:46 2007 +0200
+++ b/dmd/declaration.c	Mon Oct 22 15:40:56 2007 +0200
@@ -31,7 +31,7 @@
     type = NULL;
     storage_class = STCundefined;
     protection = PROTundefined;
-    linkage = LINKdefault;
+    linkage = LINKdefault;
     llvmTouched = false;
 }
 
@@ -549,6 +549,7 @@
     onstack = 0;
     canassign = 0;
     value = NULL;
+    llvmNestedIndex = -1;
 }
 
 Dsymbol *VarDeclaration::syntaxCopy(Dsymbol *s)
@@ -1049,6 +1050,7 @@
 		fdthis->getLevel(loc, fdv);
 	    nestedref = 1;
 	    fdv->nestedFrameRef = 1;
+        fdv->llvmNestedVars.insert(this);
 	    //printf("var %s in function %s is nested ref\n", toChars(), fdv->toChars());
 	}
     }