From 4e4730086888357c05b36bacc673dcb8f3bf03cf Mon Sep 17 00:00:00 2001 From: Tagir Valeev Date: Tue, 26 Dec 2017 15:28:20 +0700 Subject: [PATCH] NullnessUtil#getExpressionNullness: fixed for reference expressions --- .../intellij/codeInspection/dataFlow/NullnessUtil.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/NullnessUtil.java b/java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/NullnessUtil.java index ec349d7bfad8..b6221e964035 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/NullnessUtil.java +++ b/java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/NullnessUtil.java @@ -172,10 +172,6 @@ public class NullnessUtil { if (expression instanceof PsiTypeCastExpression) { return getExpressionNullness(((PsiTypeCastExpression)expression).getOperand(), useDataflow); } - if (expression instanceof PsiReferenceExpression) { - PsiElement target = ((PsiReferenceExpression)expression).resolve(); - return DfaPsiUtil.getElementNullability(expression.getType(), (PsiModifierListOwner)target); - } if (expression instanceof PsiAssignmentExpression) { PsiAssignmentExpression assignment = (PsiAssignmentExpression)expression; if(assignment.getOperationTokenType().equals(JavaTokenType.EQ)) { @@ -186,6 +182,10 @@ public class NullnessUtil { if (useDataflow) { return fromBoolean(CommonDataflow.getExpressionFact(expression, DfaFactType.CAN_BE_NULL)); } + if (expression instanceof PsiReferenceExpression) { + PsiElement target = ((PsiReferenceExpression)expression).resolve(); + return DfaPsiUtil.getElementNullability(expression.getType(), (PsiModifierListOwner)target); + } if (expression instanceof PsiMethodCallExpression) { PsiMethod method = ((PsiMethodCallExpression)expression).resolveMethod(); return method != null ? DfaPsiUtil.getElementNullability(expression.getType(), method) : Nullness.UNKNOWN;