forbid casting to nested wildcards (IDEA-71007)

This commit is contained in:
anna
2013-05-03 17:21:30 +02:00
parent 8f46b9f30b
commit e9e7ce005d
4 changed files with 47 additions and 3 deletions
@@ -0,0 +1,32 @@
import java.util.List;
public class Test {
interface P {
}
public abstract class AP implements P {
}
public class AP1 extends AP {
}
public class AP2 extends AP {
}
private static final List<Class<AP1>> AP_LIST = listOf(AP1.class);
private static <T> List<T> listOf(T... ts) {
return null;
}
public static void test() {
List<Class<? extends AP>> apList1 = <error descr="Inconvertible types; cannot cast 'java.util.List<java.lang.Class<Test.AP1>>' to 'java.util.List<java.lang.Class<? extends Test.AP>>'">(List<Class<? extends AP>>) AP_LIST</error>;
List<Class<? super AP1>> apList2 = <error descr="Inconvertible types; cannot cast 'java.util.List<java.lang.Class<Test.AP1>>' to 'java.util.List<java.lang.Class<? super Test.AP1>>'">(List<Class<? super AP1>>) AP_LIST</error>;
}
}