blob: 1995793fd0207b7c23d1f4c693eaaa8f0388638c [file] [log] [blame]
class InferenceFailBug {
interface Func1<T1, R> {
R apply(T1 v1);
void other();
}
interface F1<T1, R> extends Func1<T1, R> {
default void other() {}
}
<T1, R> Func1<T1, R> func(F1<T1, R> f1) { return f1; }
interface Future<T> {
<R> Future<R> map(Func1<T, R> f1);
}
private Future<Integer> futureExample(Future<String> future) {
return future.map(func(s -> s.toUpperCase())).map(func(s -> s.length()));
}
}