IDEA-117896 Behavior of variable checked for null inspection is influenced by brackets

This commit is contained in:
Anna Kozlova
2013-12-09 21:20:00 +04:00
parent 4b84c125dc
commit f74cd44e78
3 changed files with 15 additions and 1 deletions
@@ -17,6 +17,7 @@ package com.siyeh.ig.bugs;
import com.intellij.psi.*;
import com.intellij.psi.tree.IElementType;
import com.intellij.psi.util.PsiUtil;
import com.siyeh.InspectionGadgetsBundle;
import com.siyeh.ig.BaseInspection;
import com.siyeh.ig.BaseInspectionVisitor;
@@ -56,7 +57,7 @@ public class VariableNotUsedInsideIfInspection extends BaseInspection {
@Override
public void visitConditionalExpression(PsiConditionalExpression expression) {
super.visitConditionalExpression(expression);
final PsiExpression condition = expression.getCondition();
final PsiExpression condition = PsiUtil.skipParenthesizedExprDown(expression.getCondition());
if (!(condition instanceof PsiBinaryExpression)) {
return;
}
@@ -61,4 +61,9 @@ public class VariableNotUsedInsideIf {
private int someValue() {
return 0;
}
void perenthesis(String[] args)
{
String message = (args == null) ? "not null" : "null";
}
}
@@ -41,4 +41,12 @@
<problem_class severity="WARNING" attribute_key="WARNING_ATTRIBUTES">Reference checked for 'null' is not used inside 'if'</problem_class>
<description>&lt;code&gt;x&lt;/code&gt; checked for 'null' is not used inside conditional #loc</description>
</problem>
<problem>
<file>VariableNotUsedInsideIf.java</file>
<line>67</line>
<problem_class severity="WARNING" attribute_key="WARNING_ATTRIBUTES">Reference checked for 'null' is not used inside 'if'</problem_class>
<description>&lt;code&gt;args&lt;/code&gt; checked for 'null' is not used inside conditional #loc</description>
</problem>
</problems>