From c4fb6d48c58501b26a1a4b4b7911436a492a2736 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Wed, 23 Sep 2015 13:55:16 +0300 Subject: [PATCH] Object literals are now classes and expressions simultaneously for the purposes of annotation target checking --- .../kotlin/resolve/AnnotationChecker.kt | 3 +++ .../tests/annotations/options/objectLiteral.kt | 8 ++++++++ .../tests/annotations/options/objectLiteral.txt | 17 +++++++++++++++++ .../checkers/JetDiagnosticsTestGenerated.java | 6 ++++++ .../descriptors/annotations/KotlinTarget.kt | 9 +++++---- 5 files changed, 39 insertions(+), 4 deletions(-) create mode 100644 compiler/testData/diagnostics/tests/annotations/options/objectLiteral.kt create mode 100644 compiler/testData/diagnostics/tests/annotations/options/objectLiteral.txt diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/AnnotationChecker.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/AnnotationChecker.kt index a5fb526aad9..56f5b54c034 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/AnnotationChecker.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/AnnotationChecker.kt @@ -173,6 +173,7 @@ public class AnnotationChecker(private val additionalCheckers: Iterable TargetLists.T_INITIALIZER is JetMultiDeclaration -> TargetLists.T_MULTI_DECLARATION is JetFunctionLiteralExpression -> TargetLists.T_FUNCTION_LITERAL + is JetObjectLiteralExpression -> TargetLists.T_OBJECT_LITERAL is JetExpression -> TargetLists.T_EXPRESSION else -> TargetLists.EMPTY } @@ -229,6 +230,8 @@ public class AnnotationChecker(private val additionalCheckers: Iterable