File: T6747671.java

package info (click to toggle)
libnb-javaparser-java 9%2B2018-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, buster
  • size: 65,172 kB
  • sloc: java: 440,096; xml: 6,359; sh: 865; makefile: 314
file content (43 lines) | stat: -rw-r--r-- 1,024 bytes parent folder | download | duplicates (18)
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
33
34
35
36
37
38
39
40
41
42
43
/**
 * @test /nodynamiccopyright/
 * @bug 6747671 8022567
 * @summary -Xlint:rawtypes
 * @compile/ref=T6747671.out -XDrawDiagnostics -Xlint:rawtypes T6747671.java
 */


class T6747671<E> {

    static class B<X> {}

    class A<X> {
        class X {}
        class Z<Y> {}
    }


    A.X x1;//raw warning
    A.Z z1;//raw warning

    T6747671.B<Integer> b1;//ok
    T6747671.B b2;//raw warning

    A<String>.X x2;//ok
    A<String>.Z<Integer> z2;//ok
    A<B>.Z<A<B>> z3;//raw warning (2)

    void test(Object arg1, B arg2) {//raw warning
        boolean b = arg1 instanceof A;//ok
        Object a = (A)arg1;//ok
        A a2 = new A() {};//raw warning (2)
        a2.new Z() {};//raw warning
    }

    @TA B @TA[] arr = new @TA B @TA [0];//JDK-8022567: raw warning (2)
    //todo: 8057688 type annotations in type argument position are lost
    Class<B[]> classes1;//no warning
    Class<B>[] classes2;//no warning

    @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE_USE)
    @interface TA { }
}