-
Bug
-
Resolution: Fixed
-
P3
-
8
-
b13
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8037878 | 9 | Vicente Arturo Romero Zaldivar | P3 | Closed | Fixed | b11 |
JDK-8045149 | 8u25 | Vicente Arturo Romero Zaldivar | P3 | Resolved | Fixed | b01 |
JDK-8052588 | emb-8u26 | Vicente Arturo Romero Zaldivar | P3 | Resolved | Fixed | b17 |
This code:
interface Task<E extends Exception> {}
class Comparator<T> {}
class CustomException extends Exception {}
class TaskQueue<E extends Exception, T extends Task<E>> {}
abstract class Test {
abstract <E extends Exception, T extends Task<E>> TaskQueue<E, T> create(Comparator<? super T> comparator);
void f(Comparator<Task<CustomException>> comp) {
TaskQueue<CustomException, Task<CustomException>> queue = create(comp);
}
}
compiles in 6 and 7 but fails to compile in 8.
Reported on lambda-dev: http://mail.openjdk.java.net/pipermail/lambda-dev/2013-November/011442.html
interface Task<E extends Exception> {}
class Comparator<T> {}
class CustomException extends Exception {}
class TaskQueue<E extends Exception, T extends Task<E>> {}
abstract class Test {
abstract <E extends Exception, T extends Task<E>> TaskQueue<E, T> create(Comparator<? super T> comparator);
void f(Comparator<Task<CustomException>> comp) {
TaskQueue<CustomException, Task<CustomException>> queue = create(comp);
}
}
compiles in 6 and 7 but fails to compile in 8.
Reported on lambda-dev: http://mail.openjdk.java.net/pipermail/lambda-dev/2013-November/011442.html
- backported by
-
JDK-8045149 javac should take multiple upper bounds into account in incorporation
- Resolved
-
JDK-8052588 javac should take multiple upper bounds into account in incorporation
- Resolved
-
JDK-8037878 javac should take multiple upper bounds into account in incorporation
- Closed
- relates to
-
JDK-8028813 Lambda Spec: Take multiple upper bounds into account in incorporation
- Closed
-
JDK-8048838 type inference performance regression
- Closed