diff --git a/java/java-impl/src/com/intellij/codeInsight/completion/FunctionalExpressionCompletionProvider.java b/java/java-impl/src/com/intellij/codeInsight/completion/FunctionalExpressionCompletionProvider.java index a63682e50edf..9a264159a47e 100644 --- a/java/java-impl/src/com/intellij/codeInsight/completion/FunctionalExpressionCompletionProvider.java +++ b/java/java-impl/src/com/intellij/codeInsight/completion/FunctionalExpressionCompletionProvider.java @@ -150,7 +150,7 @@ public class FunctionalExpressionCompletionProvider extends CompletionProvider consumer = eachReturnType -> { PsiClass psiClass = PsiUtil.resolveClassInType(eachReturnType); - if (psiClass == null || psiClass instanceof PsiTypeParameter) return; + if (psiClass == null || psiClass instanceof PsiTypeParameter || psiClass.hasModifierProperty(PsiModifier.ABSTRACT)) return; if (eachReturnType.getArrayDimensions() == 0) { PsiMethod[] constructors = psiClass.getConstructors(); diff --git a/java/java-tests/testSrc/com/intellij/codeInsight/completion/SmartType18CompletionTest.java b/java/java-tests/testSrc/com/intellij/codeInsight/completion/SmartType18CompletionTest.java index 2b5285620ebc..c9722d8d713f 100644 --- a/java/java-tests/testSrc/com/intellij/codeInsight/completion/SmartType18CompletionTest.java +++ b/java/java-tests/testSrc/com/intellij/codeInsight/completion/SmartType18CompletionTest.java @@ -104,6 +104,7 @@ public class SmartType18CompletionTest extends LightFixtureCompletionTestCase { myFixture.addClass("package foo; public class ImplBar implements intf.Intf {}"); myFixture.addClass("package foo; public class ImplFoo implements intf.Intf {}"); myFixture.addClass("package foo; public class ImplIncompatible implements intf.Intf {}"); + myFixture.addClass("package foo; public abstract class ImplAbstract implements intf.Intf { public ImplAbstract() {} }"); myFixture.addClass("package foo; class ImplInaccessible implements intf.Intf {}"); configureByTestName();