/* * @test /nodynamiccopyright/ * @bug 8074381 * @summary java.lang.AssertionError during compiling * @compile/fail/ref=T8074381a.out -XDrawDiagnostics T8074381a.java */ class T8074381a { interface Sup<X> { boolean m(X x); } interface Sub<X> extends Sup<String> { boolean m(String s); } @SuppressWarnings("deprecation") void testRaw() { Sub s1 = c -> true; Sub s2 = Boolean::new; Sub s3 = new Sub() { @Override public boolean m(String o) { return true; } }; } @SuppressWarnings("deprecation") void testNonRaw() { Sub<Integer> s1 = c -> true; Sub<Integer> s2 = Boolean::new; Sub<Integer> s3 = new Sub<Integer>() { @Override public boolean m(String o) { return true; } }; } }