anchor.diff:           (std-slot-value class 'name))
           (t
            (class-name class))))
  -(defun (setf safe-class-name) (value class)
  -  (cond ((standard-class-instance-p class)
  -         (setf (std-slot-value class 'name) value))
  -        ((funcallable-standard-class-instance-p class)
  -         (setf (std-slot-value class 'name) value))
  -        (t
  -         (setf (class-name class) value))))
   
   (defun safe-class-precedence-list (class)
     (cond ((standard-class-instance-p class)
  
positive.code:   (:method ((accessor-method standard-accessor-method))
      (declare (notinline slot-value)) ; bootstrap hack
      (slot-value accessor-method 'slot-definition)))
  
  ;;; Method management
  ;;;
  
negative.code: ;;; FIXME: CLASS-DEFAULT-INITARGS, CLASS-PRECEDENCE-LIST, and CLASS-SLOTS
  ;;; must signal an error if the class has not been finalized, but doing
  ;;; this causing issues during finalization.
  ;;; I guess making the appropriate slots unbound if the class is not finalized,
  ;;; then filling them in during finalization would work.
  
  (defgeneric class-default-initargs (class)
    (:method ((class clos-class))
  