[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [STUMP] Compiling with new SBCL's
From: |
Dirk Sondermann |
Subject: |
Re: [STUMP] Compiling with new SBCL's |
Date: |
Sun, 14 Jun 2009 13:09:07 +0200 |
User-agent: |
Thunderbird 2.0.0.21 (X11/20090501) |
Hi,
After the latest patch, pathname-is-executable-p is no longer a simple
function in the sense of SBCL, but has become a closure. Therefore,
sb-impl::%simple-fun-arglist fails at extracting the arglist and
yields a value that isn't even a list.
This problem can be avoided by replacing sb-impl::%simple-fun-arglist
in manual.lisp by sb-introspect:function-arglist which can deal with
all kinds of functions (see the attached patch).
Regards,
Dirk
diff --git a/manual.lisp b/manual.lisp
index f3c5f06..422ffde 100644
--- a/manual.lisp
+++ b/manual.lisp
@@ -26,6 +26,8 @@
(in-package :stumpwm)
+(require :sb-introspect)
+
;; handy for figuring out which symbol is borking the documentation
(defun dprint (sym)
(declare (ignorable sym))
@@ -44,7 +46,7 @@
(*print-pretty* nil))
(format s "@defun {~a} ~{~a~^ ~}~%~a~&@end
defun~%~%"
name
- #+sbcl (sb-impl::%simple-fun-arglist
fn)
+ #+sbcl (sb-introspect:function-arglist
fn)
#+clisp (ext:arglist fn)
#- (or sbcl clisp) '("(Check the code
for args list)")
(documentation fn 'function))
@@ -57,7 +59,7 @@
(*print-pretty* nil))
(format s "@defmac {~a} ~{~a~^ ~}~%~a~&@end
defmac~%~%"
name
- #+sbcl (sb-impl::%simple-fun-arglist
(macro-function symbol))
+ #+sbcl (sb-introspect:function-arglist
(macro-function symbol))
#+clisp (ext:arglist symbol)
#- (or sbcl clisp) '("(Check the code
for args list)")
;;; FIXME: when clisp compiles
@@ -94,7 +96,7 @@
(let ((cmd (symbol-function (find-symbol
(string-upcase name) :stumpwm))))
(format s "@deffn {Command} ~a ~{~a~^
~}~%~a~&@end deffn~%~%"
name
- #+sbcl (sb-impl::%simple-fun-arglist
cmd)
+ #+sbcl (sb-introspect:function-arglist
cmd)
#+clisp (ext:arglist cmd)
#- (or sbcl clisp) '("(Check the code
for args list)")
(documentation cmd 'function))