mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-22 11:29:28 +07:00
Under @DefaultQualifier, all simple type instances are assumed to be notnull. Type of argument for Object obj = Objects.requireNonNull(xyz) is inferred to be `Object` type mention. As a result, it's believed to be notnull. While we are not fixing the issue in general, in this particular case, we can disable type-based nullability, as we know requireNonNull contract Fixes IDEA-303382 Incorrect inspection for requireNonNull with DefaultQualifier annotation GitOrigin-RevId: fa010ac638be4a78b9464c1a6faa4d4d7f08ec34
18 lines
490 B
Java
18 lines
490 B
Java
import java.util.Objects;
|
|
import java.util.concurrent.ThreadLocalRandom;
|
|
import org.checkerframework.checker.nullness.qual.NonNull;
|
|
import org.checkerframework.checker.nullness.qual.Nullable;
|
|
import org.checkerframework.framework.qual.DefaultQualifier;
|
|
|
|
@DefaultQualifier(NonNull.class)
|
|
class Temp {
|
|
|
|
void run() {
|
|
Object obj = Objects.requireNonNull(maybeNull());
|
|
}
|
|
|
|
@Nullable Object maybeNull() {
|
|
return ThreadLocalRandom.current().nextBoolean() ? null : new Object();
|
|
}
|
|
|
|
} |