[armedbear-cvs] r14426 - trunk/abcl/src/org/armedbear/lisp

ehuelsmann at common-lisp.net ehuelsmann at common-lisp.net
Thu Mar 7 21:38:28 UTC 2013


Author: ehuelsmann
Date: Thu Mar  7 13:38:26 2013
New Revision: 14426

Log:
Fix #274: Infinite loop when compiling COM.INFORMATIMAGO.COMMON-LISP.CESARUM.

Modified:
   trunk/abcl/src/org/armedbear/lisp/dump-form.lisp

Modified: trunk/abcl/src/org/armedbear/lisp/dump-form.lisp
==============================================================================
--- trunk/abcl/src/org/armedbear/lisp/dump-form.lisp	Wed Mar  6 01:58:27 2013	(r14425)
+++ trunk/abcl/src/org/armedbear/lisp/dump-form.lisp	Thu Mar  7 13:38:26 2013	(r14426)
@@ -75,7 +75,8 @@
        (return))
      (when (null object)
        (return-from df-check-cons))
-     (df-register-circularity object)))
+     (when (eq :circular (df-register-circularity object))
+       (return))))
 
 (defun df-check-vector (object)
   (dotimes (index (length object))
@@ -267,6 +268,7 @@
         (*circularity* (make-hash-table :test #'eq))
         (*instance-forms* (make-hash-table :test #'eq))
         (*circle-counter* 0))
+;;    (print form)
     (unless *prevent-fasl-circle-detection*
       (df-check-object form))
     (dump-object form stream)))




More information about the armedbear-cvs mailing list