anchor.diff:     (generate-slots :type (proper-list 'boolean)
                      :initarg :generate-slots
                      :initform nil)
  +   (auto-pk :type (proper-list 'boolean)
  +            :initarg :auto-pk
  +            :initform '(t))
      (%initialized :type (proper-list 'boolean)
                    :initform nil
                    :accessor initializedp))
  
positive.code: (defmethod reinitialize-instance :around ((class dao-table-class) &rest initargs)
    (let ((generate-slots (car (getf initargs :generate-slots))))
      (if (or generate-slots
              (initargs-contains-primary-key initargs))
          (setf (getf initargs :direct-slots)
                (remove '%oid (getf initargs :direct-slots)
  
negative.code: 
  (defmethod initialize-instance :around ((class dao-table-class) &rest initargs &key direct-superclasses &allow-other-keys)
    (unless (or (car (getf initargs :generate-slots))
                (not (car (or (getf initargs :auto-pk)
                              '(t))))
                (initargs-contains-primary-key initargs))
      (push *oid-slot-definition* (getf initargs :direct-slots)))
  
  