+ (declare (type function function))
+ ;; The Lisp-level type FUNCTION can conceal a multitude of sins..
+ (case (sb-kernel:get-type function)
+ ((#.sb-vm:function-header-type #.sb-vm:closure-function-header-type)
+ (sb-kernel:%function-arglist function))
+ (#.sb-vm:closure-header-type (has-arglist-info-p
+ (sb-kernel:%closure-function
+ function)))
+ ;; in code/describe.lisp, ll. 227 (%describe-function), we use a scheme
+ ;; like above, and it seems to work. -- MNA 2001-06-12
+ ;;
+ ;; (There might be other cases with arglist info also.
+ ;; FUNCTION-HEADER-TYPE and CLOSURE-HEADER-TYPE just
+ ;; happen to be the two case that I had my nose rubbed in when
+ ;; debugging a GC problem caused by applying %FUNCTION-ARGLIST to
+ ;; a closure. -- WHN 2001-06-05)
+ (t nil)))