private static void appendTypeParameterWithBounds(
      TypeParameterElement typeParameter, StringBuilder sb) {
    sb.append(typeParameter.getSimpleName());
    String sep = " extends ";
    for (TypeMirror bound : typeParameter.getBounds()) {
      if (!bound.toString().equals("java.lang.Object")) {
        sb.append(sep);
        sep = " & ";
        sb.append(bound);
      }
    }
  }
An AutoValue extension that generates a subclass that does nothing useful.
value/src/it/functional/src/test/java/com/google/auto/value/gwt/EmptyExtension.java