1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/test/tools/javac/generics/rare/6665356/T6665356.java Wed Apr 27 01:34:52 2016 +0800 1.3 @@ -0,0 +1,30 @@ 1.4 +/* 1.5 + * @test /nodynamiccopyright/ 1.6 + * @author Maurizio Cimadamore 1.7 + * @bug 6665356 1.8 + * @summary Cast not allowed when both qualifying type and inner class are parameterized 1.9 + * @compile/fail/ref=T6665356.out -XDrawDiagnostics T6665356.java 1.10 + */ 1.11 + 1.12 +class T6665356 { 1.13 + class Outer<S> { 1.14 + class Inner<T> {} 1.15 + } 1.16 + 1.17 + void test1() { 1.18 + boolean b; 1.19 + b = null instanceof Outer.Inner; 1.20 + b = null instanceof Outer<?>.Inner; 1.21 + b = null instanceof Outer.Inner<?>; 1.22 + b = null instanceof Outer<?>.Inner<?>; 1.23 + } 1.24 + 1.25 + void test2() { 1.26 + boolean b; 1.27 + Object o; 1.28 + o = (Outer.Inner)null; 1.29 + o = (Outer<?>.Inner)null; 1.30 + o = (Outer.Inner<?>)null; 1.31 + o = (Outer<?>.Inner<?>)null; 1.32 + } 1.33 +}