diff --git a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/RemoveSuppressWarningAction.java b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/RemoveSuppressWarningAction.java index c3b8ecfdcddf..8929dc6d03be 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/RemoveSuppressWarningAction.java +++ b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/RemoveSuppressWarningAction.java @@ -72,10 +72,9 @@ public class RemoveSuppressWarningAction implements LocalQuickFix { public void applyFix(@NotNull Project project, @NotNull ProblemDescriptor descriptor) { PsiElement element = descriptor.getPsiElement(); try { - if (element instanceof PsiIdentifier) { + if (element != null) { if (!FileModificationService.getInstance().prepareFileForWrite(element.getContainingFile())) return; - final PsiIdentifier identifier = (PsiIdentifier)element; - final PsiDocCommentOwner commentOwner = PsiTreeUtil.getParentOfType(identifier, PsiDocCommentOwner.class); + final PsiDocCommentOwner commentOwner = PsiTreeUtil.getParentOfType(element, PsiDocCommentOwner.class); if (commentOwner != null) { final PsiElement psiElement = JavaSuppressionUtil.getElementMemberSuppressedIn(commentOwner, myID); if (psiElement instanceof PsiAnnotation) { diff --git a/java/java-analysis-impl/src/com/intellij/codeInspection/RedundantSuppressInspectionBase.java b/java/java-analysis-impl/src/com/intellij/codeInspection/RedundantSuppressInspectionBase.java index b3dd1510d9f2..388e66022cce 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInspection/RedundantSuppressInspectionBase.java +++ b/java/java-analysis-impl/src/com/intellij/codeInspection/RedundantSuppressInspectionBase.java @@ -292,7 +292,10 @@ public class RedundantSuppressInspectionBase extends GlobalInspectionTool { myQuickFixes.put(key, fix); } PsiElement identifier = null; - if (psiMember instanceof PsiMethod) { + if (!(suppressedScope instanceof PsiMember)) { + identifier = suppressedScope; + } + else if (psiMember instanceof PsiMethod) { identifier = ((PsiMethod)psiMember).getNameIdentifier(); } else if (psiMember instanceof PsiField) { diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before1.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before1.java index e87940e14385..825706ca2b75 100644 --- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before1.java +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before1.java @@ -6,8 +6,8 @@ public class Test { static void foo(T... t){ } - void foo() { - //noinspection unchecked + void foo() { + //noinspection unchecked foo(new ArrayList()); } } diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before11.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before11.java index 847ae2b318fd..ab6fee033293 100644 --- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before11.java +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before11.java @@ -10,7 +10,7 @@ public class SampleSafeVarargs { } @SuppressWarnings({"unchecked"}) - void foo() { + void foo() { asList(new ArrayList()); List l ; ArrayList strings = new ArrayList(); diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before2.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before2.java index 837351a47324..d8436646d0dc 100644 --- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before2.java +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before2.java @@ -6,8 +6,8 @@ public class Test { static void foo(T... t){ } - void foo() { - //noinspection unchecked,blah-blah-toolid + void foo() { + //noinspection unchecked,blah-blah-toolid foo(new ArrayList()); } } diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before3.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before3.java index b4107cfaec18..61a94caa32b5 100644 --- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before3.java +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before3.java @@ -11,8 +11,8 @@ public class Test { return null; } - void foo() { - //noinspection unchecked + void foo() { + //noinspection unchecked foo(new ArrayList()).addAll(foo1(new ArrayList())); } } diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before4.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before4.java index a6dc51d2c808..f408873bf4dd 100644 --- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before4.java +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/redundantUncheckedVarargs/before4.java @@ -7,8 +7,8 @@ public class Test { return null; } - void foo() { - //noinspection unchecked + void foo() { + //noinspection unchecked List> list = foo(new ArrayList()); } } diff --git a/java/java-tests/testData/inspection/redundantSuppress/defaultFile/expected.xml b/java/java-tests/testData/inspection/redundantSuppress/defaultFile/expected.xml index 6fd7f7a2d7d7..f21d9d67b61e 100644 --- a/java/java-tests/testData/inspection/redundantSuppress/defaultFile/expected.xml +++ b/java/java-tests/testData/inspection/redundantSuppress/defaultFile/expected.xml @@ -3,7 +3,7 @@ X.java - 4 + 5 Redundant suppression Redundant suppression @@ -28,7 +28,7 @@ X.java - 19 + 20 Redundant suppression Redundant suppression