1.1 --- a/test/tools/javac/generics/6531090/T6531090b.java Thu Oct 23 17:59:16 2008 +0100 1.2 +++ b/test/tools/javac/generics/6531090/T6531090b.java Thu Oct 23 17:59:43 2008 +0100 1.3 @@ -23,7 +23,7 @@ 1.4 1.5 /* 1.6 * @test 1.7 - * @bug 6531090 1.8 + * @bug 6531090 6711619 1.9 * 1.10 * @summary Cannot access methods/fields of a captured type belonging to an intersection type 1.11 * @author Maurizio Cimadamore 1.12 @@ -32,12 +32,20 @@ 1.13 public class T6531090b { 1.14 1.15 static class A { 1.16 - public void a() {} 1.17 - public A a; 1.18 + public void a1() {} 1.19 + protected void a2() {} 1.20 + void a3() {} 1.21 + public A a1; 1.22 + protected A a2; 1.23 + A a3; 1.24 } 1.25 static class B extends A { 1.26 - public void b(){} 1.27 - public B b; 1.28 + public void b1() {} 1.29 + protected void b2() {} 1.30 + void b3() {} 1.31 + public B b1; 1.32 + protected B b2; 1.33 + B b3; 1.34 } 1.35 static interface I{ 1.36 void i(); 1.37 @@ -65,18 +73,35 @@ 1.38 } 1.39 1.40 static void testMemberMethods(C<? extends A, ? extends I> arg) { 1.41 - arg.t.a(); 1.42 - arg.t.b(); 1.43 + arg.t.a1(); 1.44 + arg.t.a2(); 1.45 + arg.t.a3(); 1.46 + arg.t.b1(); 1.47 + arg.t.b2(); 1.48 + arg.t.b3(); 1.49 arg.t.i1(); 1.50 - arg.w.a(); 1.51 - arg.w.b(); 1.52 + arg.w.a1(); 1.53 + arg.w.a2(); 1.54 + arg.w.a3(); 1.55 + arg.w.b1(); 1.56 + arg.w.b2(); 1.57 + arg.w.b3(); 1.58 arg.w.i1(); 1.59 } 1.60 1.61 static void testMemberFields(C<? extends A, ? extends I> arg) { 1.62 - A ta = arg.t.a; 1.63 - B tb = arg.t.b; 1.64 - A wa = arg.w.a; 1.65 - B wb = arg.w.b; 1.66 + A ta; B tb; 1.67 + ta = arg.t.a1; 1.68 + ta = arg.t.a2; 1.69 + ta = arg.t.a3; 1.70 + tb = arg.t.b1; 1.71 + tb = arg.t.b2; 1.72 + tb = arg.t.b3; 1.73 + ta = arg.w.a1; 1.74 + ta = arg.w.a2; 1.75 + ta = arg.w.a3; 1.76 + tb = arg.w.b1; 1.77 + tb = arg.w.b2; 1.78 + tb = arg.w.b3; 1.79 } 1.80 }