import org.checkerframework.checker.nullness.qual.*;
import org.checkerframework.checker.nullness.qual.RequiresNonNull;
class OverrideNNOE2 {
static class Super {
@Nullable Object f;
@RequiresNonNull("f")
void call() {}
}
static class Sub extends Super {
@Nullable Object g;
@Override
@RequiresNonNull({"f", "g"})
//:: error: (contracts.precondition.override.invalid)
void call() {
g.hashCode();
}
}
public static void main(String[] args) {
Super s = new Sub();
s.f = new Object();
s.call();
}
}