File: Neg20.java

package info (click to toggle)
libnb-javaparser-java 9%2B2018-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 65,320 kB
  • sloc: java: 440,096; xml: 6,359; sh: 865; makefile: 314
file content (36 lines) | stat: -rw-r--r-- 798 bytes parent folder | download | duplicates (22)
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
/*
 * @test /nodynamiccopyright/
 * @bug 8078592
 * @summary Compiler fails to reject erroneous use of diamond with anonymous classes involving "fresh" type variables.
 * @compile/fail/ref=Neg20.out Neg20.java -XDrawDiagnostics
 */
import java.lang.annotation.ElementType;
import java.lang.annotation.Target;

public class Neg20 {
    static class Foo<E extends B<E>> {
        public Foo<E> complexMethod(E a) {
            return this;
        }
    }

    static class Goo<@T E> {
        public Goo<E> complexMethod(E a) {
            return this;
        }
    }

    static class B<V> {
    }

    @Target(ElementType.TYPE_USE)
    static @interface T {
    }

    public static void check() {
        Foo<?> t4 = new Foo<>() {
        };
        Goo<?> g4 = new Goo<>() {
        };
    }
}