ForbidAccessToFieldUsingSuperTest.java revision 2727:2bfbb068284d
1/* 2 * @test /nodynamiccopyright/ 3 * @bug 8059921 4 * @summary Missing compile error in Java 8 mode for Interface.super.field access 5 * @compile/fail/ref=ForbidAccessToFieldUsingSuperTest.out -XDrawDiagnostics ForbidAccessToFieldUsingSuperTest.java 6 */ 7 8public class ForbidAccessToFieldUsingSuperTest { 9 class C { 10 int m() { return 0; } 11 } 12 13 interface T { 14 int f = 0; 15 C c = null; 16 default int mm() { 17 return 0; 18 } 19 } 20 21 interface T1 extends T {} 22 23 class X implements T1 { 24 int i = T1.super.f; //fail 25 int j = T1.super.c.m(); //fail 26 27 void foo(Runnable r) { 28 foo(T1.super::mm); //should'n fail 29 } 30 } 31} 32