// Test case for Issue 240: // https://github.com/typetools/checker-framework/issues/240 import org.checkerframework.checker.nullness.qual.Nullable; class I<A> {} // This should compile, because the implicit upper // bound of I is "@Nullable Object" class Use extends I<@Nullable String> {} class I2<A extends Object> {} // This use must be an error. //:: error: (type.argument.type.incompatible) class Use2 extends I2<@Nullable String> {}