Loading... (original) (raw)
- Type:
Bug
- Resolution: Unresolved
- Priority:
P3
- Fix Version/s: tbd
- Affects Version/s: 5.0, 7, 8
Reduction of subtyping constraints (ArrayList<?> <: List<? super alpha>) invokes capture in javac, leading to incorrect constraints on ivars involving capture vars; these new types also foil the argument that incorporation will terminate.
The correct behavior is unspecified: what is the parameterization of List that is a supertype of ArrayList<?>? How do we derive it?
blocks
JDK-8160244 skip capture conversion before subtyping if types are parameterizations of the same class or interface
- Open
JDK-8206142 type inference: javac is incorrectly applying capture conversion during incorporation
- In Progress
relates to
JDK-8030746 4.10: Define subtyping for inner classes of parameterized types
- Open
JDK-8164401 Incorrect treatment of wildcards in subtyping
- Open
JDK-8170887 18.2.1: Capture variables should not escape lambda bodies
- Open
JDK-8160114 Unexpected inferred type from wildcard subtyping constraint
- Closed
JDK-8168760 ClassCastException: Type$TypeMapping$3 cannot be cast to Type$WildcardType
- Closed
JDK-8170885 18.4: Avoid inferring capture variables during resolution
- Open
JDK-8033709 4.5.1: Provable distinctness of intersection types
- Open
JDK-8251891 Lower bound containing wildcard get lost during type inference
- Open
JDK-8314380 JLS 4. 10. 4. Least Upper Bound is a complete gibberish (full of bugs)
- Open
JDK-8039214 Inference should not map capture variables to their upper bounds
- Closed
JDK-8155072 Type inference regression
- Closed
JDK-8177520 Type inference "varargs mismatch; inference variable R has incompatible bounds"
- Closed
JDK-8199234 Code compiles in java8 but not in java9 : "incompatible types: java.lang.Object cannot be converted ..."
- Closed
(10 relates to)