[armedbear-ticket] [armedbear] #214: Stack overflow when compiler macro with fallback is triggered

armedbear armedbear-devel at common-lisp.net
Tue Jun 5 11:56:53 UTC 2012


#214: Stack overflow when compiler macro with fallback is triggered
----------------------+-----------------------------------------------------
 Reporter:  mevenson  |       Owner:  ehuelsmann
     Type:  defect    |      Status:  new       
 Priority:  major     |   Milestone:  1.1.0     
Component:  compiler  |     Version:  1.0.1     
 Keywords:            |  
----------------------+-----------------------------------------------------
 [http://article.gmane.org/gmane.lisp.armedbear.devel/2352 James Lawerence
 reports]

 {{{
 (eval-when (:compile-toplevel :load-toplevel :execute)
   (defun foo () 99)

   (define-compiler-macro foo ()
     `(locally (declare (notinline foo))
        (foo))))

 (defun call-foo ()
   (foo))
 }}}

 Of course, the use case is a compiler macro that says, "OK, let's
 optimize! ... Never mind, I don't want to optimize that."

 {{{
 Armed Bear Common Lisp 1.0.1-svn-13750-13751
 Java 1.7.0_04 Oracle Corporation
 [...]
 ; (DEFUN FOO ...)
 ; (DEFINE-COMPILER-MACRO FOO ...)
 ; (DEFUN CALL-FOO ...)
 java.lang.StackOverflowError
         at
 org.armedbear.lisp.StructureObject$pf_make_structure.execute(StructureObject.java:671)
         at org.armedbear.lisp.Symbol.execute(Symbol.java:865)
         at org.armedbear.lisp.LispThread.execute(LispThread.java:760)
         at org.armedbear.lisp.jvm_714.execute(jvm.lisp:567)
 }}}

-- 
Ticket URL: <http://trac.common-lisp.net/armedbear/ticket/214>
armedbear <http://common-lisp.net/project/armedbear>
armedbear


More information about the armedbear-ticket mailing list