test/tools/javac/warnings/6747671/T6747671.java

Thu, 19 Aug 2010 11:52:58 +0100

author
mcimadamore
date
Thu, 19 Aug 2010 11:52:58 +0100
changeset 638
d6fe0ea070aa
parent 384
ed31953ca025
child 2038
8d1c48de706d
permissions
-rw-r--r--

6885255: Improve usability of raw warnings
Summary: raw warnings should be disabled in (i) instanceof expressions and (ii) when java.lang.Class is not parameterized
Reviewed-by: jjg

     1 /**
     2  * @test /nodynamiccopyright/
     3  * @bug 6747671
     4  * @summary -Xlint:rawtypes
     5  * @compile/ref=T6747671.out -XDrawDiagnostics -Xlint:rawtypes T6747671.java
     6  */
     9 class T6747671<E> {
    11     static class B<X> {}
    13     class A<X> {
    14         class X {}
    15         class Z<Y> {}
    16     }
    19     A.X x1;//raw warning
    20     A.Z z1;//raw warning
    22     T6747671.B<Integer> b1;//ok
    23     T6747671.B b2;//raw warning
    25     A<String>.X x2;//ok
    26     A<String>.Z<Integer> z2;//ok
    27     A<B>.Z<A<B>> z3;//raw warning (2)
    29     void test(Object arg1, B arg2) {//raw warning
    30         boolean b = arg1 instanceof A;//ok
    31         Object a = (A)arg1;//ok
    32         A a2 = new A() {};//raw warning (2)
    33         a2.new Z() {};//raw warning
    34     }
    35 }

mercurial