Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8259418 | 17 | Vicente Arturo Romero Zaldivar | P3 | Resolved | Fixed | b05 |
JDK-8260101 | 16.0.1 | Vicente Arturo Romero Zaldivar | P3 | Resolved | Fixed | b03 |
this program:
import java.util.stream.*;
public class Test {
interface I {}
static abstract class C { }
static class A extends C implements I { }
static class B extends C implements I { }
static String f(I i) { return null; }
public static void main(String[] args) {
Stream.of(new A(), new B())
.map(Test::f)
.forEach(System.out::println);
}
}
is accepted by the compiler but fails with LCE at execution time. Reported at: http://mail.openjdk.java.net/pipermail/compiler-dev/2018-October/012569.html
import java.util.stream.*;
public class Test {
interface I {}
static abstract class C { }
static class A extends C implements I { }
static class B extends C implements I { }
static String f(I i) { return null; }
public static void main(String[] args) {
Stream.of(new A(), new B())
.map(Test::f)
.forEach(System.out::println);
}
}
is accepted by the compiler but fails with LCE at execution time. Reported at: http://mail.openjdk.java.net/pipermail/compiler-dev/2018-October/012569.html
- backported by
-
JDK-8259418 program fails with LambdaConversionException at execution time
- Resolved
-
JDK-8260101 program fails with LambdaConversionException at execution time
- Resolved
- relates to
-
JDK-8259491 Wrong lambda conversions involving intersection types
- Open
(1 links to)