X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fpcl%2Fdocumentation.lisp;h=d5d4eb2863482c01f091823f6de203a72c3fe73c;hb=3fa2feb10ab827fc6cc2a85287e78b6e66b7bf4d;hp=b06a53c01ca1687158df90111917b6d95e7b625c;hpb=f181ad9ffeeadf341b6a16c3591eadf0c1e3fa61;p=sbcl.git diff --git a/src/pcl/documentation.lisp b/src/pcl/documentation.lisp index b06a53c..d5d4eb2 100644 --- a/src/pcl/documentation.lisp +++ b/src/pcl/documentation.lisp @@ -27,15 +27,15 @@ (defmethod documentation ((x list) (doc-type (eql 'function))) (when (and (legal-fun-name-p x) (fboundp x)) - (documentation (fdefinition x) t))) + (fun-doc (fdefinition x)))) (defmethod documentation ((x list) (doc-type (eql 'compiler-macro))) (awhen (compiler-macro-function x) (documentation it t))) (defmethod documentation ((x symbol) (doc-type (eql 'function))) - (when (fboundp x) - (documentation (symbol-function x) t))) + (when (and (legal-fun-name-p x) (fboundp x)) + (fun-doc (or (macro-function x) (fdefinition x))))) (defmethod documentation ((x symbol) (doc-type (eql 'compiler-macro))) (awhen (compiler-macro-function x) @@ -205,7 +205,7 @@ ;;; default if DOC-TYPE doesn't match one of the specified types (defmethod documentation (object doc-type) - (warn "unsupported DOCUMENTATION: type ~S for object ~S" + (warn "unsupported DOCUMENTATION: type ~S for object of type ~S" doc-type (type-of object)) nil)