[FIR] Add JvmName to the list of REQUIRED_ANNOTATIONS
We need to resolve `JvmName` as soon as possible because it can be analyzed in `FirJavaElementFinder` to create the correct class stub. #KT-57802
This commit is contained in:
+2
-4
@@ -7,12 +7,9 @@ package org.jetbrains.kotlin.fir.analysis.jvm.checkers
|
||||
|
||||
import org.jetbrains.kotlin.config.LanguageFeature
|
||||
import org.jetbrains.kotlin.fir.FirSession
|
||||
import org.jetbrains.kotlin.fir.declarations.getAnnotationRetention
|
||||
import org.jetbrains.kotlin.fir.declarations.*
|
||||
import org.jetbrains.kotlin.fir.declarations.AnnotationsPosition
|
||||
import org.jetbrains.kotlin.fir.languageVersionSettings
|
||||
import org.jetbrains.kotlin.fir.declarations.FirAnnotationsPlatformSpecificSupportComponent
|
||||
import org.jetbrains.kotlin.fir.expressions.FirAnnotation
|
||||
import org.jetbrains.kotlin.fir.languageVersionSettings
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirClassLikeSymbol
|
||||
import org.jetbrains.kotlin.name.ClassId
|
||||
import org.jetbrains.kotlin.name.JvmStandardClassIds
|
||||
@@ -23,6 +20,7 @@ object FirJvmAnnotationsPlatformSpecificSupportComponent : FirAnnotationsPlatfor
|
||||
StandardClassIds.Annotations.Deprecated,
|
||||
StandardClassIds.Annotations.Target,
|
||||
JvmStandardClassIds.Annotations.Java.Target,
|
||||
JvmStandardClassIds.Annotations.JvmName,
|
||||
)
|
||||
|
||||
override val requiredAnnotations: Set<ClassId> = requiredAnnotationsWithArguments + setOf(
|
||||
|
||||
+7
@@ -6,6 +6,10 @@ package one.two;
|
||||
|
||||
public class Bar {
|
||||
public static final int BAR = OtherKt.FOO + 1;
|
||||
|
||||
public Child getChild() {
|
||||
return new Child();
|
||||
}
|
||||
}
|
||||
|
||||
// FILE: Main.kt
|
||||
@@ -16,6 +20,9 @@ const val FOO = <!EVALUATED("1")!>1<!>
|
||||
|
||||
const val BAZ = <!EVALUATED("3")!>Bar.BAR + 1<!>
|
||||
|
||||
// This class is presented here to check that on super type resolve phase we have resolved `JvmName` annotation
|
||||
class Child : Bar()
|
||||
|
||||
fun box(): String {
|
||||
return "OK"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user