X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fpcl%2Fvector.lisp;h=c4d7eba9d64884e2f28fde2afe97cddf38741955;hb=316eddc9b2b1aa24012ed826ce700105fdbcdfdb;hp=51544825de6a68a7ba95f05eb093136edd7f1d79;hpb=50462f68bf70faf0bd96de7517643afb740543e6;p=sbcl.git diff --git a/src/pcl/vector.lisp b/src/pcl/vector.lisp index 5154482..c4d7eba 100644 --- a/src/pcl/vector.lisp +++ b/src/pcl/vector.lisp @@ -638,7 +638,7 @@ (standard-class-p class) (not (eq class *the-class-t*)) ; shouldn't happen, though. (let ((slotd (find-slot-definition class slot-name))) - (and slotd (classp (slot-definition-allocation slotd))))))) + (and slotd (eq :class (slot-definition-allocation slotd))))))) (defun skip-fast-slot-access-p (class-form slot-name-form type) (let ((class (and (constantp class-form) (eval class-form))) @@ -1008,8 +1008,8 @@ ;;; Pull a name out of the %METHOD-NAME declaration in the function ;;; body given, or return NIL if no %METHOD-NAME declaration is found. (defun body-method-name (body) - (multiple-value-bind (documentation declarations real-body) - (extract-declarations body nil) + (multiple-value-bind (real-body declarations documentation) + (parse-body body nil) (declare (ignore documentation real-body)) (let ((name-decl (get-declaration '%method-name declarations))) (and name-decl