diff --git a/java/java-impl/src/com/intellij/codeInspection/RedundantLambdaParameterTypeInspection.java b/java/java-impl/src/com/intellij/codeInspection/RedundantLambdaParameterTypeInspection.java index d383eeab458b..ecf4e0f7a310 100644 --- a/java/java-impl/src/com/intellij/codeInspection/RedundantLambdaParameterTypeInspection.java +++ b/java/java-impl/src/com/intellij/codeInspection/RedundantLambdaParameterTypeInspection.java @@ -92,7 +92,7 @@ public class RedundantLambdaParameterTypeInspection extends BaseJavaLocalInspect for (PsiTypeParameter parameter : typeParameters) { final PsiType psiType = substitutor.substitute(parameter); - if (psiType == null || LambdaUtil.dependsOnTypeParams(psiType, expression)) return; + if (psiType == null || LambdaUtil.dependsOnTypeParams(psiType, expression, parameter)) return; } } } diff --git a/java/java-psi-impl/src/com/intellij/psi/impl/source/resolve/PsiResolveHelperImpl.java b/java/java-psi-impl/src/com/intellij/psi/impl/source/resolve/PsiResolveHelperImpl.java index 63290e641c02..17cb593b58a7 100644 --- a/java/java-psi-impl/src/com/intellij/psi/impl/source/resolve/PsiResolveHelperImpl.java +++ b/java/java-psi-impl/src/com/intellij/psi/impl/source/resolve/PsiResolveHelperImpl.java @@ -892,7 +892,7 @@ public class PsiResolveHelperImpl implements PsiResolveHelper { } final PsiMethod method = LambdaUtil.getFunctionalInterfaceMethod(functionalInterfaceType); if (method == null || methodParamsDependOnTypeParams((PsiLambdaExpression)expression, method.getParameterList().getParameters(), - substitutor, typeParameter)) { + PsiUtil.resolveGenericsClassInType(functionalInterfaceType).getSubstitutor(), typeParameter)) { return getFailedInferenceConstraint(typeParameter); } }