| /* |
| * @test /nodynamiccopyright/ |
| * @author Maurizio Cimadamore |
| * @bug 6665356 |
| * @summary Cast not allowed when both qualifying type and inner class are parameterized |
| * @compile/fail/ref=T6665356.out -XDrawDiagnostics T6665356.java |
| */ |
| |
| class T6665356 { |
| class Outer<S> { |
| class Inner<T> {} |
| } |
| |
| void test1() { |
| boolean b; |
| b = null instanceof Outer.Inner; |
| b = null instanceof Outer<?>.Inner; |
| b = null instanceof Outer.Inner<?>; |
| b = null instanceof Outer<?>.Inner<?>; |
| } |
| |
| void test2() { |
| boolean b; |
| Object o; |
| o = (Outer.Inner)null; |
| o = (Outer<?>.Inner)null; |
| o = (Outer.Inner<?>)null; |
| o = (Outer<?>.Inner<?>)null; |
| } |
| } |