blob: 07cc1eb0eb9a23563be0fc07457eb8d656fda079 [file] [log] [blame]
// This test ensures that special handling for method names in DescribeImagesRequest isn't used for
// other classes with the same names.
import org.checkerframework.checker.calledmethods.qual.*;
import org.checkerframework.common.returnsreceiver.qual.*;
public class SpecialNames {
@This SpecialNames withFilters() {
return this;
}
void setFilters() {}
@This SpecialNames withFilters(SpecialNames f) {
return this;
}
void setFilters(SpecialNames f) {}
@This SpecialNames withName() {
return this;
}
@This SpecialNames withName(String f) {
return this;
}
SpecialNames() {}
SpecialNames(String x) {}
static void test(SpecialNames s) {
// :: error: assignment
@CalledMethods("withOwners") SpecialNames x = s.withFilters(new SpecialNames().withName("owner"));
}
static void test2(SpecialNames s) {
s.setFilters(new SpecialNames("owner"));
// :: error: assignment
@CalledMethods("withOwners") SpecialNames x = s;
}
static void test3(SpecialNames s) {
// :: error: assignment
@CalledMethods("withOwners") SpecialNames x = s.withFilters(new SpecialNames().withName("owner"));
}
static void test4(SpecialNames s) {
s.setFilters(new SpecialNames("owner"));
// :: error: assignment
@CalledMethods("withOwners") SpecialNames x = s;
}
static void testForCrashes(SpecialNames s) {
s.setFilters();
s.withFilters();
s.setFilters(new SpecialNames().withName());
}
}