diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/psiutils/VariableAccessUtils.java b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/psiutils/VariableAccessUtils.java index 6ed0a0b8bc06..ba5b11dfae5a 100644 --- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/psiutils/VariableAccessUtils.java +++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/psiutils/VariableAccessUtils.java @@ -544,10 +544,10 @@ public class VariableAccessUtils { public static boolean canUseAsNonFinal(PsiLocalVariable var) { if (var == null) return false; PsiElement block = PsiUtil.getVariableCodeBlock(var, null); - return block != null && ReferencesSearch.search(var).allMatch(ref -> { - PsiElement context = PsiTreeUtil.getParentOfType(ref.getElement(), PsiClass.class, PsiLambdaExpression.class); - return context == null || PsiTreeUtil.isAncestor(context, block, false); - }); + return block != null && + getVariableReferences(var, block).stream() + .map(ref -> PsiTreeUtil.getParentOfType(ref, PsiClass.class, PsiLambdaExpression.class)) + .allMatch(context -> context == null || PsiTreeUtil.isAncestor(context, block, false)); } private static class VariableCollectingVisitor extends JavaRecursiveElementWalkingVisitor {