// COMPILER_ARGUMENTS: -Xjspecify-annotations import org.jspecify.annotations.*; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @DefaultNonNull public class WildcardsWithDefault { public void noBoundsNotNull(WildcardsWithDefault.A a) {} public void noBoundsNullable(WildcardsWithDefault.A<@Nullable ?, @Nullable ?, @Nullable ?> a) {} public class A {} } @DefaultNonNull class Use { public static void main( WildcardsWithDefault.A aNotNullNotNullNotNull, WildcardsWithDefault.A aNotNullNotNullNull, WildcardsWithDefault.A aNotNullNullNotNull, WildcardsWithDefault.A aNotNullNullNull, WildcardsWithDefault b ) { // jspecify_nullness_mismatch b.noBoundsNotNull(aNotNullNotNullNotNull); b.noBoundsNotNull(aNotNullNotNullNull); // jspecify_nullness_mismatch b.noBoundsNotNull(aNotNullNullNotNull); // jspecify_nullness_mismatch b.noBoundsNotNull(aNotNullNullNull); b.noBoundsNullable(aNotNullNotNullNotNull); b.noBoundsNullable(aNotNullNotNullNull); b.noBoundsNullable(aNotNullNullNotNull); b.noBoundsNullable(aNotNullNullNull); } }