1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
import java.util.List;
import org.checkerframework.checker.nullness.qual.*;
public class Issue2171 {
static void varArgsMethod(@PolyNull Object... args) {}
static void callToVarArgsObject(
@PolyNull Object pn, @NonNull Object nn, @Nullable Object nble) {
varArgsMethod(nble, nble);
varArgsMethod(nble, nn);
varArgsMethod(nble, pn);
varArgsMethod(nn, nble);
varArgsMethod(nn, nn);
varArgsMethod(nn, pn);
varArgsMethod(pn, nble);
varArgsMethod(pn, nn);
varArgsMethod(pn, pn);
}
@SuppressWarnings("unchecked")
static void genVarArgsMethod(List<? extends @PolyNull Object>... args) {}
@SuppressWarnings("unchecked")
static void genCallToVarArgsObject(
List<@PolyNull Object> pn, List<@NonNull Object> nn, List<@Nullable Object> nble) {
genVarArgsMethod(nble, nble);
genVarArgsMethod(nble, nn);
genVarArgsMethod(nble, pn);
genVarArgsMethod(nn, nble);
genVarArgsMethod(nn, nn);
genVarArgsMethod(nn, pn);
genVarArgsMethod(pn, nble);
genVarArgsMethod(pn, nn);
genVarArgsMethod(pn, pn);
}
}
|