From 57b5f13e97005fc6ad959c9acb02a8dc5dfb35bc Mon Sep 17 00:00:00 2001 From: Gregory Shrago Date: Thu, 20 May 2010 18:07:33 +0400 Subject: [PATCH] use assignments if DFA is not available --- .../src/com/intellij/codeInspection/dataFlow/DfaUtil.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/java/java-impl/src/com/intellij/codeInspection/dataFlow/DfaUtil.java b/java/java-impl/src/com/intellij/codeInspection/dataFlow/DfaUtil.java index 1bcbe7ae9380..99588b50c8c9 100644 --- a/java/java-impl/src/com/intellij/codeInspection/dataFlow/DfaUtil.java +++ b/java/java-impl/src/com/intellij/codeInspection/dataFlow/DfaUtil.java @@ -143,7 +143,6 @@ public class DfaUtil { return codeBlock; } - @Nullable("null means DFA analysis has failed (too complex to analyze)") public static Collection getPossibleInitializationElements(final PsiElement qualifierExpression) { if (qualifierExpression instanceof PsiMethodCallExpression) { return Collections.singletonList(qualifierExpression); @@ -152,8 +151,7 @@ public class DfaUtil { final PsiElement targetElement = ((PsiReferenceExpression)qualifierExpression).resolve(); if (targetElement instanceof PsiVariable) { final Collection variableValues = getCachedVariableValues((PsiVariable)targetElement, qualifierExpression); - if (variableValues == null) return null; - if (variableValues.isEmpty() && targetElement instanceof PsiField) { + if ((variableValues == null || variableValues.isEmpty())) { return getVariableAssignmentsInFile((PsiVariable)targetElement, false); } return variableValues;