Path: blob/master/test/langtools/tools/javac/4880220/T4880220.java
41149 views
/*1* @test /nodynamiccopyright/2* @bug 48802203* @summary Add a warning when accessing a static method via an reference4*5* @compile/ref=T4880220.empty.out T4880220.java6* @compile/ref=T4880220.warn.out -XDrawDiagnostics -Xlint:static T4880220.java7* @compile/ref=T4880220.warn.out -XDrawDiagnostics -Xlint:all T4880220.java8* @compile/ref=T4880220.empty.out -XDrawDiagnostics -Xlint:all,-static T4880220.java9* @compile/ref=T4880220.error.out/fail -XDrawDiagnostics -Werror -Xlint:all T4880220.java10*/1112public class T4880220 {13void m1() {14int good_1 = C.m();15int good_2 = C.f;16int good_3 = C.x;1718C c = new C();19int bad_inst_1 = c.m();20int bad_inst_2 = c.f;21int bad_inst_3 = c.x;2223int bad_expr_1 = c().m();24int bad_expr_2 = c().f;25int bad_expr_3 = c().x;26}2728void m2() {29Class<?> good_1 = C.class;30Class<?> good_2 = C[].class;31}3233C c() {34return new C();35}3637static class C {38static int m() { return 0; }39static int f;40static final int x = 3;41}42}434445