diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/highlighter/JetPsiChecker.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/highlighter/JetPsiChecker.kt
index dca50773db4..3f28ba7f38b 100644
--- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/highlighter/JetPsiChecker.kt
+++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/highlighter/JetPsiChecker.kt
@@ -23,6 +23,7 @@ import com.intellij.lang.annotation.Annotation
import com.intellij.lang.annotation.AnnotationHolder
import com.intellij.lang.annotation.Annotator
import com.intellij.openapi.application.ApplicationManager
+import com.intellij.openapi.editor.colors.CodeInsightColors
import com.intellij.openapi.editor.colors.TextAttributesKey
import com.intellij.openapi.progress.ProcessCanceledException
import com.intellij.psi.MultiRangeReference
@@ -147,6 +148,9 @@ public open class JetPsiChecker : Annotator, HighlightRangeExtension {
}
for (textRange in textRanges) {
val annotation = holder.createWarningAnnotation(textRange, getDefaultMessage(diagnostic))
+
+ if (factory == Errors.DEPRECATED_CLASS_OBJECT_SYNTAX) annotation.setTextAttributes(CodeInsightColors.DEPRECATED_ATTRIBUTES)
+
setUpAnnotation(diagnostic, annotation, if (factory in Errors.UNUSED_ELEMENT_DIAGNOSTICS)
ProblemHighlightType.LIKE_UNUSED_SYMBOL
else
diff --git a/idea/testData/checker/DeprecatedClassObjectSyntax.kt b/idea/testData/checker/DeprecatedClassObjectSyntax.kt
new file mode 100644
index 00000000000..28762f55af4
--- /dev/null
+++ b/idea/testData/checker/DeprecatedClassObjectSyntax.kt
@@ -0,0 +1,17 @@
+class A {
+ class object {
+
+ }
+}
+
+class B {
+ class object C {
+
+ }
+}
+
+class C {
+ default class object G {
+
+ }
+}
\ No newline at end of file
diff --git a/idea/tests/org/jetbrains/kotlin/checkers/JetPsiCheckerTestGenerated.java b/idea/tests/org/jetbrains/kotlin/checkers/JetPsiCheckerTestGenerated.java
index 81a8b34ee8b..6f66463545d 100644
--- a/idea/tests/org/jetbrains/kotlin/checkers/JetPsiCheckerTestGenerated.java
+++ b/idea/tests/org/jetbrains/kotlin/checkers/JetPsiCheckerTestGenerated.java
@@ -136,6 +136,12 @@ public class JetPsiCheckerTestGenerated extends AbstractJetPsiCheckerTest {
doTest(fileName);
}
+ @TestMetadata("DeprecatedClassObjectSyntax.kt")
+ public void testDeprecatedClassObjectSyntax() throws Exception {
+ String fileName = JetTestUtils.navigationMetadata("idea/testData/checker/DeprecatedClassObjectSyntax.kt");
+ doTest(fileName);
+ }
+
@TestMetadata("ExtensionFunctions.kt")
public void testExtensionFunctions() throws Exception {
String fileName = JetTestUtils.navigationMetadata("idea/testData/checker/ExtensionFunctions.kt");