[slime-devel] Re: invoke-nth-restart, cmucl and *communication-style* :sigio

Luke Gorrie luke at bluetail.com
Fri Jul 9 11:33:21 UTC 2004


Marco Baringer <mb at bese.it> writes:

> connecting to a remote (as in slime-connect) cmucl lisp with the
> *communication-style* set to :sigio. a thread signals an error and i
> get an sldb debugger in emacs. however none of the restarts actually
> do anything.

Thanks, I've reproduced. The Lisp doesn't have to be remote. I'll
check this out tonight. Debugging our thread support on CMUCL and
LispWorks is currently on top of my todo list.

And from the other mail:

> ;;; now go and connect emacs to this lisp
> * (with-simple-restart (test "Can't call me.") 
>     (swank::spawn (lambda () (error "ERR"))))
>
> notice how the sldb buffer doesn't show the test restart. does
> *sldb-restarts* need some special handling when using :SIGIO?

This looks correct to me. The restart exists on the stack of the
parent thread and not the thread that's hitting the debugger. To see
the restart you'd need to do:

 (swank::spawn (lambda ()
                 (with-simple-restart (test "Can't call me.") 
                   (error "ERR"))))

In this case we do see the restart in SLDB but get the other problem
of being unable to invoke it (in :sigio at least).

-Luke





More information about the slime-devel mailing list