~ chicken-core (chicken-5) d5178d86dc06ad89771ce0d4859753636350dcbe


commit d5178d86dc06ad89771ce0d4859753636350dcbe
Author:     felix <felix@call-with-current-continuation.org>
AuthorDate: Tue Jul 19 13:19:29 2011 +0200
Commit:     felix <felix@call-with-current-continuation.org>
CommitDate: Tue Jul 19 13:19:29 2011 +0200

    don't propagate across direct_lambda

diff --git a/optimizer.scm b/optimizer.scm
index c8952ef5..3d182304 100644
--- a/optimizer.scm
+++ b/optimizer.scm
@@ -299,6 +299,10 @@
 			  (list (walk (first subs) (cons id fids) '())) ) ) ) ]
 		     [else (walk-generic n class params subs (cons id fids) '() #f)] ) ) ))
 
+	  ((##core#direct_lambda)
+	   (fluid-let ((gae '()))
+	     (walk-generic n class params subs fids '() #f)))
+
 	  ((##core#call)
 	   (let* ([fun (car subs)]
 		  [funclass (node-class fun)] )
Trap