X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fpcl%2Flow.lisp;h=a8e412224c4d6bfc2c9b70dded0dfa202203cf1b;hb=b83353d9f998e5c0e34604b5593df70c66d2c510;hp=4fa6a093ec69f3eef83a294b228c46c6199bb7fe;hpb=03090fcd920d559cfe9c35f20c4038a8c74d0e5b;p=sbcl.git diff --git a/src/pcl/low.lisp b/src/pcl/low.lisp index 4fa6a09..a8e4122 100644 --- a/src/pcl/low.lisp +++ b/src/pcl/low.lisp @@ -117,8 +117,14 @@ (import 'sb-kernel:funcallable-instance-p) (defun set-funcallable-instance-function (fin new-value) - (declare (type function new-value)) - (aver (funcallable-instance-p fin)) + (declare (type function new-value) + ;; KLUDGE: it might be nice to restrict + ;; SB-MOP:SET-FUNCALLABLE-INSTANCE-FUNCTION to operate only + ;; on generalized instances of + ;; SB-MOP:FUNCALLABLE-STANDARD-OBJECT; at present, even + ;; PCL's internal use of SET-FUNCALLABLE-INSTANCE-FUNCTION + ;; doesn't obey this restriction. + (type funcallable-instance fin)) (setf (funcallable-instance-fun fin) new-value)) ;;; FIXME: these macros should just go away. It's not clear whether