X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fpcl%2Fslots.lisp;h=69232a7ce6ddef929ffcf5aaf541f1bbcc3fc323;hb=d71896ded395b8453794f0c2e121af1cd095de8b;hp=2c058c035d0f52eefa75f47c8b8c55c40d368b22;hpb=937a46e64983862cb9e21761db95e58700341940;p=sbcl.git diff --git a/src/pcl/slots.lisp b/src/pcl/slots.lisp index 2c058c0..69232a7 100644 --- a/src/pcl/slots.lisp +++ b/src/pcl/slots.lisp @@ -80,6 +80,7 @@ (when (eql slot-name (slot-definition-name slot)) (return slot)))) +(declaim (ftype (sfunction (t symbol) t) slot-value)) (defun slot-value (object slot-name) (let* ((class (class-of object)) (slot-definition (find-slot-definition class slot-name))) @@ -279,7 +280,7 @@ (value (funcall function object))) (declare (type function function)) (if (eq value +slot-unbound+) - (slot-unbound class object (slot-definition-name slotd)) + (values (slot-unbound class object (slot-definition-name slotd))) value))) (defmethod (setf slot-value-using-class)