24 lines
517 B
Java
24 lines
517 B
Java
|
/*
|
||
|
* @test
|
||
|
* @bug 8170410
|
||
|
* @summary inference: javac doesn't implement 18.2.5 correctly
|
||
|
* @compile T8170410.java
|
||
|
*/
|
||
|
|
||
|
class T8170410 {
|
||
|
interface CheckedSupplier<T extends Throwable, R> {
|
||
|
R get() throws T;
|
||
|
}
|
||
|
|
||
|
static <T extends Throwable, R> CheckedSupplier<T, R> checked(CheckedSupplier<T, R> checkedSupplier) {
|
||
|
return checkedSupplier;
|
||
|
}
|
||
|
|
||
|
static void test() {
|
||
|
checked(() -> null).get();
|
||
|
checked(T8170410::m).get();
|
||
|
}
|
||
|
|
||
|
static String m() { return ""; }
|
||
|
}
|