blob: afc1c499f5465c35864b135fb5d80c80ee6f7003 [file] [log] [blame]
import org.checkerframework.checker.tainting.qual.Tainted;
import org.checkerframework.checker.tainting.qual.Untainted;
import org.checkerframework.framework.qual.HasQualifierParameter;
@HasQualifierParameter(Tainted.class)
public class Refine {
void method(@Tainted Refine tainted, @Untainted Refine untainted) {
// :: error: (assignment)
@Tainted Refine local = untainted;
// :: error: (assignment)
@Untainted Refine untaintedLocal = local;
@Untainted Refine untaintedLocal2 = untaintedLocal;
}
void methodNull() {
@Tainted Refine local = null;
@Untainted Refine untaintedLocal = local;
}
public static class SuperClass {
@Untainted SuperClass() {}
}
@HasQualifierParameter(Tainted.class)
public static class SubClass extends SuperClass {}
static void method2(@Untainted SubClass subClass) {
@Untainted SuperClass untainted1 = subClass;
@Tainted SuperClass superClass = subClass;
@Untainted SuperClass untainted2 = superClass;
}
}