(setf reader-specializers (mapcar #'find-class reader-specializers))
(setf writer-specializers (mapcar #'find-class writer-specializers))))
+(defmacro quiet-funcall (fun &rest args)
+ ;; Don't give a style-warning about undefined function here.
+ `(funcall (locally (declare (muffle-conditions style-warning))
+ ,fun)
+ ,@args))
+
(defmacro accessor-slot-value (object slot-name &environment env)
(aver (constantp slot-name env))
(let* ((slot-name (constant-form-value slot-name env))
(reader-name (slot-reader-name slot-name)))
`(let ((.ignore. (load-time-value
(ensure-accessor 'reader ',reader-name ',slot-name))))
- (declare (ignore .ignore.))
- (truly-the (values t &optional)
- ;; Don't give a style-warning about undefined function here.
- (funcall (locally (declare (muffle-conditions style-warning))
- #',reader-name)
- ,object)))))
+ (declare (ignore .ignore.))
+ (truly-the (values t &optional)
+ (quiet-funcall #',reader-name ,object)))))
(defmacro accessor-set-slot-value (object slot-name new-value &environment env)
(aver (constantp slot-name env))
(ensure-accessor 'writer ',writer-name ',slot-name)))
(.new-value. ,new-value))
(declare (ignore .ignore.))
- (funcall #',writer-name .new-value. ,object)
+ (quiet-funcall #',writer-name .new-value. ,object)
.new-value.)))
(if bind-object
`(let ,bind-object ,form)
initargs))
(defun make-std-writer-method-function (class-or-name slot-name)
- (let* ((class (when (eq *boot-state* 'complete)
+ (let* ((class (when (eq **boot-state** 'complete)
(if (typep class-or-name 'class)
class-or-name
(find-class class-or-name nil))))
(vector (make-array n :initial-element nil))
(save-slot-location-p
(or bootstrap
- (when (eq 'complete *boot-state*)
+ (when (eq 'complete **boot-state**)
(let ((metaclass (class-of class)))
(or (eq metaclass *the-class-standard-class*)
(eq metaclass *the-class-funcallable-standard-class*))))))
(save-type-check-function-p
(unless bootstrap
- (and (eq 'complete *boot-state*) (safe-p class)))))
+ (and (eq 'complete **boot-state**) (safe-p class)))))
(flet ((add-to-vector (name slot)
(declare (symbol name)
(optimize (sb-c::insert-array-bounds-checks 0)))
(slot-definition-type-check-function slot))
slot)
(svref vector index))))))
- (if (eq 'complete *boot-state*)
+ (if (eq 'complete **boot-state**)
(dolist (slot slots)
(add-to-vector (slot-definition-name slot) slot))
(dolist (slot slots)