[slime-cvs] CVS update: slime/swank-cmucl.lisp slime/swank-lispworks.lisp
Helmut Eller
heller at common-lisp.net
Sun Apr 25 06:37:05 UTC 2004
Update of /project/slime/cvsroot/slime
In directory common-lisp.net:/tmp/cvs-serv2156
Modified Files:
swank-cmucl.lisp swank-lispworks.lisp
Log Message:
(arglist): Return :not-available if the arglist cannot be determined.
Date: Sun Apr 25 02:37:05 2004
Author: heller
Index: slime/swank-cmucl.lisp
diff -u slime/swank-cmucl.lisp:1.97 slime/swank-cmucl.lisp:1.98
--- slime/swank-cmucl.lisp:1.97 Wed Apr 21 15:46:40 2004
+++ slime/swank-cmucl.lisp Sun Apr 25 02:37:05 2004
@@ -986,11 +986,11 @@
;; 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>)"))))))
- (check-type arglist (or list string))
+ (t
+ (handler-case (debug-function-arglist
+ (di::function-debug-function fun))
+ (di:unhandled-condition () :not-available))))))
+ (check-type arglist (or list (member :not-available)))
arglist))
Index: slime/swank-lispworks.lisp
diff -u slime/swank-lispworks.lisp:1.38 slime/swank-lispworks.lisp:1.39
--- slime/swank-lispworks.lisp:1.38 Sat Mar 27 16:17:36 2004
+++ slime/swank-lispworks.lisp Sun Apr 25 02:37:05 2004
@@ -100,9 +100,10 @@
(defimplementation arglist (symbol)
(let ((arglist (lw:function-lambda-list symbol)))
(etypecase arglist
- ((member :dont-know)
- (error "<arglist-unavailable>"))
- (list arglist))))
+ ((member :dont-know)
+ :not-available)
+ (list
+ arglist))))
(defimplementation macroexpand-all (form)
(walker:walk-form form))
More information about the slime-cvs
mailing list