Details
-
Bug
-
Status: Closed
-
Minor
-
Resolution: Fixed
-
None
-
None
Description
A declaration of:
def <R extends SyntaxNode, O extends Node> List<O> $$(Collection<? extends R> input, Class<O> outputType = Node)
yields (package FQ names omitted for brevity):
public <R extends SyntaxNode, O extends Node> java.util.List<O> $$(java.util.Collection<? extends SyntaxNode<R extends SyntaxNode>> input, java.lang.Class<O> outputType) { return (List<O>)null;}
which of course doesn't compile, because extends SyntaxNode does not belong to the type declaration of the method parameter.
The issue seems to only affect constrained wildcards, note that the other method parameter turns out just fine.