equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * @test /nodynamiccopyright/ |
2 * @test /nodynamiccopyright/ |
3 * @bug 6939620 6894753 |
3 * @bug 7020044 |
4 * |
4 * |
5 * @summary Switch to 'complex' diamond inference scheme |
5 * @summary Check that diamond is not allowed with anonymous inner class expressions |
6 * @author mcimadamore |
6 * @author Maurizio Cimadamore |
7 * @compile/fail/ref=Neg09.out Neg09.java -XDrawDiagnostics |
7 * @compile/fail/ref=Neg09.out Neg09.java -XDrawDiagnostics |
8 * |
8 * |
9 */ |
9 */ |
10 |
10 |
11 class Neg09 { |
11 class Neg09 { |
12 static class Foo<X extends Number & Comparable<Number>> {} |
12 class Member<X> {} |
13 static class DoubleFoo<X extends Number & Comparable<Number>, |
|
14 Y extends Number & Comparable<Number>> {} |
|
15 static class TripleFoo<X extends Number & Comparable<Number>, |
|
16 Y extends Number & Comparable<Number>, |
|
17 Z> {} |
|
18 |
13 |
19 Foo<?> fw = new Foo<>(); |
14 static class Nested<X> {} |
20 DoubleFoo<?,?> dw = new DoubleFoo<>(); |
15 |
21 TripleFoo<?,?,?> tw = new TripleFoo<>(); |
16 void testSimple() { |
|
17 Member<?> m1 = new Member<>() {}; |
|
18 Nested<?> m2 = new Nested<>() {}; |
|
19 } |
|
20 |
|
21 void testQualified() { |
|
22 Member<?> m1 = this.new Member<>() {}; |
|
23 Nested<?> m2 = new Neg09.Nested<>() {}; |
|
24 } |
22 } |
25 } |