anchor.diff:                          :documentation documentation)))
            (top-level-form-p (top-level-p *protobuf*))
            ;; Only now can we bind *protobuf* to the new extended message
  -         (*protobuf* extends)
  -         (index 0))
  +         (*protobuf* extends))
       (assert message ()
               "There is no message named ~A to extend" name)
       (assert (eq type (proto-class message)) ()
  
positive.code:                      ;; TODO(cgay): this should probably refer to the external field name but I'll
                       ;; wait since I've no idea if that slot is bound at this point.
                       (proto-internal-field-name field) (proto-class msg-desc))
               ;; todo(benkuehnert: What does this do?
               (setq index idx)
               (when slot
                 (collect-slot slot))
               (push field (proto-fields msg-desc))))))
  
negative.code:              (assert (index-within-extensions-p idx message) ()
                       "The index ~D is not in range for extending ~S"
                       idx (proto-class message))
               (when slot
                 (let* (;; The slot name which is the %field-name
                        (sname  (field-data-internal-slot-name slot))
  