anchor.diff:                       (clos-type-to-protobuf-type type)
                      (declare (ignore packed-p enum-values))
                      (assert index)
  -                   (setf (aref (oneof-descriptor-fields desc) oneof-offset)
  +                   (setf (aref field-list oneof-offset)
                            (make-instance 'field-descriptor
                                           :name (or name (slot-name->proto slot))
                                           :type (or typename ptype)
  
positive.code:   NAME: The name of the oneof.
    FIELDS: Field as output by protoc."
    (let* ((internal-name (fintern "%~A" name))
           (desc (make-oneof-descriptor
                  :internal-name internal-name
                  :external-name name
                  :fields (make-array (length fields)
                                      :element-type 'field-descriptor)))
           (oneof-offset 0))
      (loop for field in fields
            do (destructuring-bind (slot &key type typename name (default nil default-p)
                                           lazy index documentation &allow-other-keys)
  
negative.code:                                         :documentation documentation))
                     (incf oneof-offset)))))
      `(progn
         ,(make-oneof-descriptor
           :internal-name internal-name
           :external-name name
           :fields field-list))))
  
  (declaim (inline proto-%bytes))
  (defun proto-%bytes (obj)
  