diff --git a/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/checkers/JavaAnnotationCallChecker.kt b/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/checkers/JavaAnnotationCallChecker.kt index c5daff2e35b..6bd44512774 100644 --- a/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/checkers/JavaAnnotationCallChecker.kt +++ b/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/checkers/JavaAnnotationCallChecker.kt @@ -21,8 +21,8 @@ import org.jetbrains.kotlin.descriptors.ClassKind import org.jetbrains.kotlin.descriptors.ValueParameterDescriptor import org.jetbrains.kotlin.diagnostics.DiagnosticFactory0 import org.jetbrains.kotlin.load.java.JvmAnnotationNames -import org.jetbrains.kotlin.load.java.components.JavaAnnotationMapper import org.jetbrains.kotlin.load.java.descriptors.JavaClassConstructorDescriptor +import org.jetbrains.kotlin.load.java.javaToKotlinNameMap import org.jetbrains.kotlin.psi.KtAnnotationEntry import org.jetbrains.kotlin.psi.KtExpression import org.jetbrains.kotlin.resolve.BindingContext @@ -47,7 +47,7 @@ class JavaAnnotationCallChecker : CallChecker { private fun reportDeprecatedJavaAnnotation(resolvedCall: ResolvedCall<*>, context: CallCheckerContext) { val annotationEntry = resolvedCall.call.callElement as? KtAnnotationEntry ?: return val type = context.trace.get(BindingContext.TYPE, annotationEntry.typeReference) ?: return - JavaAnnotationMapper.javaToKotlinNameMap[type.constructor.declarationDescriptor?.let { DescriptorUtils.getFqNameSafe(it) }]?.let { + javaToKotlinNameMap[type.constructor.declarationDescriptor?.let { DescriptorUtils.getFqNameSafe(it) }]?.let { context.trace.report(ErrorsJvm.DEPRECATED_JAVA_ANNOTATION.on(annotationEntry, it)) } } diff --git a/core/compiler.common.jvm/src/org/jetbrains/kotlin/load/java/JvmAnnotationNames.kt b/core/compiler.common.jvm/src/org/jetbrains/kotlin/load/java/JvmAnnotationNames.kt index 5ad11be7753..d4d92b9ac4d 100644 --- a/core/compiler.common.jvm/src/org/jetbrains/kotlin/load/java/JvmAnnotationNames.kt +++ b/core/compiler.common.jvm/src/org/jetbrains/kotlin/load/java/JvmAnnotationNames.kt @@ -16,6 +16,7 @@ package org.jetbrains.kotlin.load.java +import org.jetbrains.kotlin.builtins.StandardNames import org.jetbrains.kotlin.name.FqName val JSPECIFY_NULLABLE = FqName("org.jspecify.nullness.Nullable") @@ -83,3 +84,11 @@ val MUTABLE_ANNOTATIONS = setOf( JvmAnnotationNames.JETBRAINS_MUTABLE_ANNOTATION, JvmAnnotationNames.MUTABLE_ANNOTATION ) + +val javaToKotlinNameMap: Map = + mapOf( + JvmAnnotationNames.TARGET_ANNOTATION to StandardNames.FqNames.target, + JvmAnnotationNames.RETENTION_ANNOTATION to StandardNames.FqNames.retention, + JvmAnnotationNames.DEPRECATED_ANNOTATION to StandardNames.FqNames.deprecated, + JvmAnnotationNames.DOCUMENTED_ANNOTATION to StandardNames.FqNames.mustBeDocumented + ) diff --git a/core/descriptors.jvm/src/org/jetbrains/kotlin/load/java/components/JavaAnnotationMapper.kt b/core/descriptors.jvm/src/org/jetbrains/kotlin/load/java/components/JavaAnnotationMapper.kt index bed349c36de..d26112eb824 100644 --- a/core/descriptors.jvm/src/org/jetbrains/kotlin/load/java/components/JavaAnnotationMapper.kt +++ b/core/descriptors.jvm/src/org/jetbrains/kotlin/load/java/components/JavaAnnotationMapper.kt @@ -80,14 +80,6 @@ object JavaAnnotationMapper { StandardNames.FqNames.retention to RETENTION_ANNOTATION, StandardNames.FqNames.mustBeDocumented to DOCUMENTED_ANNOTATION ) - - val javaToKotlinNameMap: Map = - mapOf( - TARGET_ANNOTATION to StandardNames.FqNames.target, - RETENTION_ANNOTATION to StandardNames.FqNames.retention, - DEPRECATED_ANNOTATION to StandardNames.FqNames.deprecated, - DOCUMENTED_ANNOTATION to StandardNames.FqNames.mustBeDocumented - ) } open class JavaAnnotationDescriptor(