1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
package flowexpression;
import testlib.flowexpression.qual.FlowExp;
public class ClassLiterals {
static class String {}
void method(
@FlowExp("String.class") Object p1,
@FlowExp("String.class") Object p2,
@FlowExp("java.lang.String.class") Object p3) {
@FlowExp("String.class") Object l1 = p1;
@FlowExp("String.class") Object l2 = p2;
// :: error: (assignment.type.incompatible)
@FlowExp("String.class") Object l3 = p3;
// :: error: (assignment.type.incompatible)
@FlowExp("java.lang.String.class") Object l4 = p1;
// :: error: (assignment.type.incompatible)
@FlowExp("java.lang.String.class") Object l5 = p2;
@FlowExp("java.lang.String.class") Object l6 = p3;
}
@FlowExp("void.class") String s0;
@FlowExp("int.class") String s1;
@FlowExp("int[].class") String s2;
@FlowExp("String[].class") String s3;
@FlowExp("java.lang.String[].class") String s4;
}
|