Analysis API: fix invalid psi elements for constants and annotation values

This commit is contained in:
Ilya Kirillov
2021-12-02 15:36:29 +01:00
parent dc9c2aa39d
commit 7440c726d0
5 changed files with 15 additions and 9 deletions
@@ -25,6 +25,7 @@ import org.jetbrains.kotlin.fir.expressions.FirAnnotation
import org.jetbrains.kotlin.fir.expressions.FirImplicitInvokeCall
import org.jetbrains.kotlin.fir.psi
import org.jetbrains.kotlin.psi.KtAnnotationEntry
import org.jetbrains.kotlin.psi.KtCallElement
import org.jetbrains.kotlin.util.OperatorNameConventions
/**
@@ -76,7 +77,7 @@ internal fun ConeDiagnostic.getCandidateSymbols(): Collection<FirBasedSymbol<*>>
internal fun FirAnnotation.toKtAnnotationApplication(useSiteSession: FirSession): KtAnnotationApplication {
return KtAnnotationApplication(
fullyExpandedClassId(useSiteSession),
psi as? KtAnnotationEntry,
psi as? KtCallElement,
useSiteTarget,
FirAnnotationValueConverter.toNamedConstantValue(
mapAnnotationParameters(this, useSiteSession),
@@ -108,7 +108,7 @@ internal object FirAnnotationValueConverter {
KtAnnotationApplicationValue(
KtAnnotationApplication(
resolvedSymbol.callableId.classId,
psi as? KtAnnotationEntry,
psi as? KtCallElement,
useSiteTarget = null,
toNamedConstantValue(resultMap, session),
)