code: @SuppressWarnings("unchecked")
    private Object union(Linker linker, Object a, Object b) {
      if (a instanceof List) {
        return union((List<?>) a, (List<?>) b);
      } else if (a instanceof Map) {
        return union(linker, (Map<ProtoMember, Object>) a, (Map<ProtoMember, Object>) b);
      } else {
        linker.addError("conflicting options: %s, %s", a, b);
        return a; // Just return any placeholder.
      }
    }
docs: Combine values for the same key, resolving conflicts based on their type.