[slime-devel] cmucl arglist
Gabor Melis
mega at hotpop.com
Fri Apr 23 21:57:58 UTC 2004
(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))
More information about the slime-devel
mailing list