diff --git a/java/java-impl/src/com/intellij/codeInspection/nullable/NullableStuffInspection.java b/java/java-impl/src/com/intellij/codeInspection/nullable/NullableStuffInspection.java index b58d9a6a8ab7..aef21b63a3bf 100644 --- a/java/java-impl/src/com/intellij/codeInspection/nullable/NullableStuffInspection.java +++ b/java/java-impl/src/com/intellij/codeInspection/nullable/NullableStuffInspection.java @@ -44,6 +44,7 @@ import com.intellij.util.ArrayUtil; import com.intellij.util.Processor; import com.intellij.util.Query; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import javax.swing.*; import java.awt.*; @@ -173,9 +174,9 @@ public class NullableStuffInspection extends BaseLocalInspectionTool { new AddAnnotationFix(anno, parameter, ArrayUtil.toStringArray(annoToRemove))); } } - if (containingClass == null) { - return; - } + } + + if (containingClass != null) { final PsiMethod[] constructors = containingClass.getConstructors(); final Query search = ReferencesSearch.search(field, new LocalSearchScope(constructors), false); search.forEach(new Processor() { @@ -246,6 +247,7 @@ public class NullableStuffInspection extends BaseLocalInspectionTool { LOG.assertTrue(parameter.isPhysical(), setter.getText()); } + @Nullable public PsiAssignmentExpression getAssignmentExpressionIfOnAssignmentLefthand(PsiExpression expression) { PsiElement parent = PsiTreeUtil.skipParentsOfType(expression, PsiParenthesizedExpression.class); if (!(parent instanceof PsiAssignmentExpression)) { diff --git a/java/java-tests/testData/inspection/nullableProblems/getterSetterProblems/expected.xml b/java/java-tests/testData/inspection/nullableProblems/getterSetterProblems/expected.xml index 07441b9e8513..e83b29bd9fea 100644 --- a/java/java-tests/testData/inspection/nullableProblems/getterSetterProblems/expected.xml +++ b/java/java-tests/testData/inspection/nullableProblems/getterSetterProblems/expected.xml @@ -62,4 +62,12 @@ Constructor parameter for @NotNull field might be annotated @NotNull itself + + Test.java + 63 + @NotNull/@Nullable problems + Constructor parameter for @NotNull field might be annotated @NotNull itself + + + diff --git a/java/java-tests/testData/inspection/nullableProblems/getterSetterProblems/src/Test.java b/java/java-tests/testData/inspection/nullableProblems/getterSetterProblems/src/Test.java index 39b421f2815a..6fc47b42a232 100644 --- a/java/java-tests/testData/inspection/nullableProblems/getterSetterProblems/src/Test.java +++ b/java/java-tests/testData/inspection/nullableProblems/getterSetterProblems/src/Test.java @@ -55,4 +55,13 @@ class D { D(long l) { myL = l; } +} + +class E { + final @NotNull C c; + + E(C c) { + this.c = c; + } + } \ No newline at end of file