| /* |
| * @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<>() { |
| }; |
| } |
| } |