/* * @test /nodynamiccopyright/ * @bug 8249261 * @summary Verify method references as conditions to conditional expressions * are handled properly. * @compile/fail/ref=MethodRefStuck8249261.out -XDrawDiagnostics MethodRefStuck8249261.java */ class MethodRefStuck8249261 { void p(int padding) {} static boolean t() { return true; } private void test() { p(MethodRefStuck8249261::t); p((MethodRefStuck8249261::t)); p(MethodRefStuck8249261::t + 1); p(MethodRefStuck8249261::t ? 1 : 0); p(true ? MethodRefStuck8249261::t : 0); p(switch (MethodRefStuck8249261::t) { default -> 0; }); p(() -> true); p((() -> true)); p((() -> true) + 1); p((() -> true) ? 1 : 0); p(true ? (() -> true) : 0); p(switch ((() -> true)) { default -> 0; }); } }