blob: abcf99b09f6967669edae251bc351cf3cc9a2ff9 [file] [log] [blame]
import org.checkerframework.common.returnsreceiver.qual.*;
// Test basic subtyping relationships for the Returns Receiver Checker.
public class OverrideTest {
static class Super {
@This Super retThis() {
return this;
}
Super retWhatever() {
return null;
}
}
static class Sub extends Super {
@Override
// :: error: override.return
Super retThis() {
return null;
}
@Override
// we do not support this case for now; would need to write explicit @This on receiver in
// superclass
// :: error: override.receiver
@This Super retWhatever() {
return this;
}
}
static class Sub2 extends Super {
@Override
@This Sub2 retThis() {
return this;
}
}
}