-
Sub-task
-
Resolution: Fixed
-
P2
-
8
-
b30
-
unknown
-
generic
-
Verified
A lambda expression can cause overload resolution to run recursively - consider the following case where we havea lambda in method context:
m(x->x.size())
Here we have an 'outer' call context, for 'm' - when a suitable overload candidate is found, the lambda needs to be attributed using that candidate's formal as target type - this means that we effectively recursively step into overload resolution (this time for x.size()). Resolve.java should be able to handle nested resolution context.
m(x->x.size())
Here we have an 'outer' call context, for 'm' - when a suitable overload candidate is found, the lambda needs to be attributed using that candidate's formal as target type - this means that we effectively recursively step into overload resolution (this time for x.size()). Resolve.java should be able to handle nested resolution context.