diff --git a/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/annotations/AbstractClassAdditionalAnnotationsProvider.kt b/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/annotations/AbstractClassAdditionalAnnotationsProvider.kt index e98f6129130..324b4c876bf 100644 --- a/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/annotations/AbstractClassAdditionalAnnotationsProvider.kt +++ b/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/annotations/AbstractClassAdditionalAnnotationsProvider.kt @@ -17,6 +17,7 @@ import org.jetbrains.kotlin.name.CallableId import org.jetbrains.kotlin.name.Name import org.jetbrains.kotlin.name.StandardClassIds import java.lang.annotation.ElementType +import java.lang.annotation.RetentionPolicy internal object AbstractClassAdditionalAnnotationsProvider : AdditionalAnnotationsProvider { override fun addAllAnnotations( @@ -143,13 +144,18 @@ private fun javaRetentionArguments(kotlinRetentionName: String?): List RetentionPolicy.CLASS.name + else -> name +} + private fun GranularAnnotationsBox.tryConvertToRepeatableJavaAnnotation( qualifiedName: String, owner: PsiModifierList, diff --git a/compiler/testData/asJava/lightClasses/lightClassByFqName/annotationBinaryRetention.descriptors.java b/compiler/testData/asJava/lightClasses/lightClassByFqName/annotationBinaryRetention.descriptors.java deleted file mode 100644 index 4549a3f0754..00000000000 --- a/compiler/testData/asJava/lightClasses/lightClassByFqName/annotationBinaryRetention.descriptors.java +++ /dev/null @@ -1,4 +0,0 @@ -@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.CLASS) -@kotlin.annotation.Retention(value = kotlin.annotation.AnnotationRetention.BINARY) -public abstract @interface Anno /* one.Anno*/ { -} \ No newline at end of file diff --git a/compiler/testData/asJava/lightClasses/lightClassByFqName/annotationBinaryRetention.java b/compiler/testData/asJava/lightClasses/lightClassByFqName/annotationBinaryRetention.java index 9c4de4b1104..1884ec6a05c 100644 --- a/compiler/testData/asJava/lightClasses/lightClassByFqName/annotationBinaryRetention.java +++ b/compiler/testData/asJava/lightClasses/lightClassByFqName/annotationBinaryRetention.java @@ -1,4 +1,4 @@ -@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.BINARY) +@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.CLASS) @kotlin.annotation.Retention(value = kotlin.annotation.AnnotationRetention.BINARY) public abstract @interface Anno /* one.Anno*/ { } diff --git a/compiler/testData/asJava/lightClasses/lightClassByFqName/annotationBinaryRetention.lib.java b/compiler/testData/asJava/lightClasses/lightClassByFqName/annotationBinaryRetention.lib.java deleted file mode 100644 index 1884ec6a05c..00000000000 --- a/compiler/testData/asJava/lightClasses/lightClassByFqName/annotationBinaryRetention.lib.java +++ /dev/null @@ -1,4 +0,0 @@ -@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.CLASS) -@kotlin.annotation.Retention(value = kotlin.annotation.AnnotationRetention.BINARY) -public abstract @interface Anno /* one.Anno*/ { -}