c03dd06d9a
Add extra functional interface check to prevent crash during code generation Reviewed-by: vromero
34 lines
776 B
Java
34 lines
776 B
Java
/*
|
|
* @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);
|
|
}
|
|
|
|
void testRaw() {
|
|
Sub s1 = c -> true;
|
|
Sub s2 = Boolean::new;
|
|
Sub s3 = new Sub() {
|
|
@Override
|
|
public boolean m(String o) { return true; }
|
|
};
|
|
}
|
|
|
|
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; }
|
|
};
|
|
}
|
|
}
|