blob: 4f4dbb2572c565d05b51b5ffb0b1333714e29869 [file] [log] [blame]
import org.checkerframework.checker.tainting.qual.Tainted;
import org.checkerframework.checker.tainting.qual.Untainted;
import org.checkerframework.framework.qual.HasQualifierParameter;
import org.checkerframework.framework.qual.NoQualifierParameter;
@HasQualifierParameter(Tainted.class)
public class InheritQualifierParameter {}
class SubHasQualifierParameter extends InheritQualifierParameter {
void test(@Untainted SubHasQualifierParameter arg) {
// :: error: (assignment)
@Tainted SubHasQualifierParameter local = arg;
}
}
@NoQualifierParameter(Tainted.class)
// :: error: (conflicting.qual.param)
class SubHasQualifierParameter1 extends InheritQualifierParameter {}
@NoQualifierParameter(Tainted.class)
class InheritNoQualifierParameter {}
class SubNoQualifierParameter extends InheritNoQualifierParameter {
void test(@Untainted SubNoQualifierParameter arg) {
@Tainted SubNoQualifierParameter local = arg;
}
}
@HasQualifierParameter(Tainted.class)
// :: error: (conflicting.qual.param)
@Tainted class SubNoQualifierParameter1 extends InheritNoQualifierParameter {}