Opened 15 years ago

Closed 15 years ago

Last modified 14 years ago

#63 closed defect (fixed)

Attempt to GO to tag whose dynamic extent has ended exits ABCL

Reported by: Mark Evenson Owned by: Mark Evenson
Priority: major Milestone: 0.22
Component: other Version: 1.0
Keywords: Cc:
Parent Tickets:

Description

Reported by Brian Mastenbrook:

When attempting to GO to a tag whose dynamic extent has ended, ABCL quits and prints the name of the exception used for internally handling GO (org.armedbear.lisp.Go). I see the same behavior in compiled or interpreted code.

CL-USER(1): (lisp-implementation-version)
"0.16.0"
CL-USER(2): (let ((f nil)) (tagbody (setf f (lambda () (go foo))) foo)  
(funcall f))
org.armedbear.lisp.Go
abcl-src-0.16.0 chandler$

Change History (4)

comment:1 Changed 15 years ago by Mark Evenson

Component: CLOSother
Owner: changed from somebody to Mark Evenson
Status: newaccepted

Tentative fix committed in #63.

It would be nice for a review from other developers.

comment:2 Changed 15 years ago by Mark Evenson

I meant "Tentatively fixed in r12153"

comment:3 Changed 15 years ago by Mark Evenson

Resolution: fixed
Status: acceptedclosed

Further work by Erik culminating in r12177 made r12153 the wrong solution. Now, non-local transfers of control are properly recognized by both the interpreter and compiler raising errors so this should "never happen".

comment:4 Changed 14 years ago by ehuelsmann

Milestone: unscheduled0.22

closed is not 'unscheduled'; moving to the most recently closed milestone.

Note: See TracTickets for help on using tickets.