[armedbear-cvs] r14420 - trunk/abcl/src/org/armedbear/lisp
    ehuelsmann at common-lisp.net 
    ehuelsmann at common-lisp.net
       
    Mon Mar  4 23:05:26 UTC 2013
    
    
  
Author: ehuelsmann
Date: Mon Mar  4 15:05:12 2013
New Revision: 14420
Log:
Fix #308: Compiled FLET exhausts the stack.
Modified:
   trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp
Modified: trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp
==============================================================================
--- trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp	Sun Mar  3 14:06:26 2013	(r14419)
+++ trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp	Mon Mar  4 15:05:12 2013	(r14420)
@@ -2122,7 +2122,9 @@
               (format t ";   full call to ~S~%" op)))))
       (when (or (<= *speed* *debug*) *require-stack-frame*)
         (emit-push-current-thread))
-      (cond ((eq op (compiland-name *current-compiland*)) ; recursive call
+      (cond ((and (eq op (compiland-name *current-compiland*))
+                  (null (compiland-parent *current-compiland*)))
+                                        ; recursive call
              (if (notinline-p op)
                  (emit-load-externalized-object op)
                  (aload 0)))
    
    
More information about the armedbear-cvs
mailing list