From fab2f3b7227bf0ff91ddfca1c91d8ce3990de03c Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Wed, 1 Jul 2020 09:58:22 +0200 Subject: [PATCH] java: hide method return type fix when compilation error won't be fixed (IDEA-244902) GitOrigin-RevId: 8617da7628ec1ca24f66305b10573e331aa2c031 --- .../daemon/impl/analysis/HighlightMethodUtil.java | 2 +- .../methodReturn8/afterInferFromArgsConstructor.java | 8 -------- .../methodReturn8/beforeInferFromArgsConstructor.java | 2 +- 3 files changed, 2 insertions(+), 10 deletions(-) delete mode 100644 java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/methodReturn8/afterInferFromArgsConstructor.java diff --git a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightMethodUtil.java b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightMethodUtil.java index b2383918709c..5b0a7a82b43e 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightMethodUtil.java +++ b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightMethodUtil.java @@ -678,7 +678,7 @@ public final class HighlightMethodUtil { private static void registerMethodReturnFixAction(@NotNull HighlightInfo highlightInfo, @NotNull MethodCandidateInfo candidate, @NotNull PsiCall methodCall) { - if (methodCall.getParent() instanceof PsiReturnStatement) { + if (candidate.getInferenceErrorMessage() != null && methodCall.getParent() instanceof PsiReturnStatement) { final PsiMethod containerMethod = PsiTreeUtil.getParentOfType(methodCall, PsiMethod.class, true, PsiLambdaExpression.class); if (containerMethod != null) { final PsiMethod method = candidate.getElement(); diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/methodReturn8/afterInferFromArgsConstructor.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/methodReturn8/afterInferFromArgsConstructor.java deleted file mode 100644 index 2f48dec59598..000000000000 --- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/methodReturn8/afterInferFromArgsConstructor.java +++ /dev/null @@ -1,8 +0,0 @@ -// "Make 'bar' return 'Foo'" "true" -public class Foo { - public Foo(int i) {} - - Foo bar() { - return new Foo(""); - } -} diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/methodReturn8/beforeInferFromArgsConstructor.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/methodReturn8/beforeInferFromArgsConstructor.java index 21284ab52c3e..18de81c0b9b9 100644 --- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/methodReturn8/beforeInferFromArgsConstructor.java +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/methodReturn8/beforeInferFromArgsConstructor.java @@ -1,4 +1,4 @@ -// "Make 'bar' return 'Foo'" "true" +// "Make 'bar' return 'Foo'" "false" public class Foo { public Foo(int i) {}