[armedbear-devel] Bug: Attempt to GO to a tag whose extent has ended quits ABCL

Brian Mastenbrook brian at mastenbrook.net
Fri Sep 18 22:00:49 UTC 2009


On Sep 18, 2009, at 11:05 AM, Tobias C. Rittweiler wrote:

> I found an opposited bug; a case where an error about a non-existing  
> tag
> is signalled even though the tag is active:
>
> (assert (eql :go
>             (prog ()
>                (funcall (compile nil (lambda () (go :go))))
>                (return 42)
>              :go
>                (return :go))))
>
>  -T.

For what it's worth, if you enable the interpreter in SBCL, it gives  
up and punts on this as well. I can't see doing anything sensible with  
it myself.

This is SBCL 1.0.29, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.

SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses.  See the CREDITS and COPYING files in the
distribution for more information.
CL-USER(1): sb-ext:*evaluator-mode*

:INTERPRET
CL-USER(2): (assert (eql :go
             (prog ()
                (funcall (compile nil (lambda () (go :go))))
                (return 42)
              :go
                (return :go))))

debugger invoked on a SB-EVAL::INTERPRETER-ENVIRONMENT-TOO-COMPLEX- 
ERROR:
   Lexical environment of #<INTERPRETED-FUNCTION NIL {1002BAEC89}> is  
too
   complex to compile.
restarts (invokable by number or by possibly-abbreviated name):
   0: [ABORT] Exit debugger, returning to top level.

(SB-EVAL:PREPARE-FOR-COMPILE #<INTERPRETED-FUNCTION NIL {1002BAEC89}>)
0]

--
Brian Mastenbrook
brian at mastenbrook.net
http://brian.mastenbrook.net/





More information about the armedbear-devel mailing list