equal
deleted
inserted
replaced
2666 } else { |
2666 } else { |
2667 IntersectionClassType ict = (IntersectionClassType)currentTarget; |
2667 IntersectionClassType ict = (IntersectionClassType)currentTarget; |
2668 ListBuffer<Type> components = new ListBuffer<>(); |
2668 ListBuffer<Type> components = new ListBuffer<>(); |
2669 for (Type bound : ict.getExplicitComponents()) { |
2669 for (Type bound : ict.getExplicitComponents()) { |
2670 if (explicitParamTypes != null) { |
2670 if (explicitParamTypes != null) { |
2671 bound = infer.instantiateFunctionalInterface(that, |
2671 try { |
2672 bound, explicitParamTypes, resultInfo.checkContext); |
2672 bound = infer.instantiateFunctionalInterface(that, |
|
2673 bound, explicitParamTypes, resultInfo.checkContext); |
|
2674 } catch (FunctionDescriptorLookupError t) { |
|
2675 // do nothing |
|
2676 } |
2673 } |
2677 } |
2674 bound = types.removeWildcards(bound); |
2678 bound = types.removeWildcards(bound); |
2675 components.add(bound); |
2679 components.add(bound); |
2676 } |
2680 } |
2677 currentTarget = types.makeIntersectionType(components.toList()); |
2681 currentTarget = types.makeIntersectionType(components.toList()); |