(defun foo (x y) (declare (optimize (debug 0))) (+ x y))
In READ-ARGLIST DI::DEBUG-FUNCTION-LAMBDA-LIST signals LAMBDA-LIST-UNAVAILABLE. Naive fix below.
Cheers, Gabor Melis
Index: swank-cmucl.lisp =================================================================== RCS file: /project/slime/cvsroot/slime/swank-cmucl.lisp,v retrieving revision 1.97 diff -u -r1.97 swank-cmucl.lisp --- swank-cmucl.lisp 21 Apr 2004 19:46:40 -0000 1.97 +++ swank-cmucl.lisp 23 Apr 2004 21:40:01 -0000 @@ -986,10 +986,13 @@ ;; this should work both for ;; compiled-debug-function and for ;; interpreted-debug-function - (t (let ((df (di::function-debug-function fun))) - (if df - (debug-function-arglist df) - "(<arglist-unavailable>)")))))) + (t (let ((df (di::function-debug-function fun)) + (unavailable "(<arglist-unavailable>)")) + (if df + (handler-case (debug-function-arglist df) + (di::lambda-list-unavailable () + unavailable)) + unavailable)))))) (check-type arglist (or list string)) arglist))