@Test
  public void propertyCanBeNullIfNullableBound() {
    assumeTrue(javacHandlesTypeAnnotationsCorrectly);
    // The generated class doesn't know what the actual type argument is, so it can't know whether
    // it is @Nullable. Because of the @Nullable bound, it omits an explicit null check, under the
    // assumption that some static-checking framework is validating type uses.
    NullableBound<@Nullable String> x = NullableBound.create(null);
    assertThat(x.maybeNullable()).isNull();
  }
Tests that an annotation on a type parameter of an {@code @AutoValue} builder is copied to the
implementation class.
value/src/it/functional/src/test/java/com/google/auto/value/AutoValueJava8Test.java