diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/highlighter/FunctionsHighlightingVisitor.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/highlighter/FunctionsHighlightingVisitor.kt index 6bd33d65401..4f2c0486cb3 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/highlighter/FunctionsHighlightingVisitor.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/highlighter/FunctionsHighlightingVisitor.kt @@ -63,7 +63,7 @@ internal class FunctionsHighlightingVisitor(holder: AnnotationHolder, bindingCon override fun visitCallExpression(expression: KtCallExpression) { val callee = expression.calleeExpression val resolvedCall = expression.getResolvedCall(bindingContext) - if (callee is KtReferenceExpression && resolvedCall != null) { + if (callee is KtReferenceExpression && callee !is KtCallExpression && resolvedCall != null) { highlightCall(callee, resolvedCall) } diff --git a/idea/testData/highlighter/InvokeCall.kt b/idea/testData/highlighter/InvokeCall.kt new file mode 100644 index 00000000000..ac13361c25e --- /dev/null +++ b/idea/testData/highlighter/InvokeCall.kt @@ -0,0 +1,8 @@ +fun test() { + Test("text", "text")() // BUG +} + +class Test(val x: String, val y: String) { + operator fun invoke() { + } +} diff --git a/idea/tests/org/jetbrains/kotlin/idea/highlighter/HighlightingTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/highlighter/HighlightingTestGenerated.java index 369f415eb36..c31eb27176f 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/highlighter/HighlightingTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/highlighter/HighlightingTestGenerated.java @@ -66,6 +66,12 @@ public class HighlightingTestGenerated extends AbstractHighlightingTest { doTest(fileName); } + @TestMetadata("InvokeCall.kt") + public void testInvokeCall() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/highlighter/InvokeCall.kt"); + doTest(fileName); + } + @TestMetadata("JavaTypes.kt") public void testJavaTypes() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("idea/testData/highlighter/JavaTypes.kt"); diff --git a/idea/tests/org/jetbrains/kotlin/test/TagsTestDataUtil.java b/idea/tests/org/jetbrains/kotlin/test/TagsTestDataUtil.java index a7d2178781e..161d5b178b9 100644 --- a/idea/tests/org/jetbrains/kotlin/test/TagsTestDataUtil.java +++ b/idea/tests/org/jetbrains/kotlin/test/TagsTestDataUtil.java @@ -151,7 +151,7 @@ public class TagsTestDataUtil { highlightInfo.getDescription()); } else { - return String.format("textAttributesKey=\"%s\"", getName()); + return String.format("textAttributesKey=\"%s\"", highlightInfo.forcedTextAttributesKey); } } else {