diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/body/resolve/FirAbstractBodyResolveTransformerDispatcher.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/body/resolve/FirAbstractBodyResolveTransformerDispatcher.kt index 52ca93529ef..26d2d5b7723 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/body/resolve/FirAbstractBodyResolveTransformerDispatcher.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/body/resolve/FirAbstractBodyResolveTransformerDispatcher.kt @@ -451,6 +451,15 @@ abstract class FirAbstractBodyResolveTransformerDispatcher( FirDeclarationsResolveTransformer::transformDanglingModifierList, ) + override fun transformFileAnnotationsContainer( + fileAnnotationsContainer: FirFileAnnotationsContainer, + data: ResolutionMode, + ): FirFileAnnotationsContainer = declarationTransformation( + fileAnnotationsContainer, + data, + FirDeclarationsResolveTransformer::transformFileAnnotationsContainer, + ) + override fun transformProperty( property: FirProperty, data: ResolutionMode, diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/body/resolve/FirDeclarationsResolveTransformer.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/body/resolve/FirDeclarationsResolveTransformer.kt index c31fe080de4..cf186141824 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/body/resolve/FirDeclarationsResolveTransformer.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/body/resolve/FirDeclarationsResolveTransformer.kt @@ -126,6 +126,16 @@ open class FirDeclarationsResolveTransformer( return danglingModifierList } + override fun transformFileAnnotationsContainer( + fileAnnotationsContainer: FirFileAnnotationsContainer, + data: ResolutionMode + ): FirFileAnnotationsContainer { + if (implicitTypeOnly) return fileAnnotationsContainer + + fileAnnotationsContainer.transformAnnotations(transformer, data) + return fileAnnotationsContainer + } + override fun transformProperty(property: FirProperty, data: ResolutionMode): FirProperty = whileAnalysing(session, property) { require(property !is FirSyntheticProperty) { "Synthetic properties should not be processed by body transformers" } diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/contracts/FirAbstractContractResolveTransformerDispatcher.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/contracts/FirAbstractContractResolveTransformerDispatcher.kt index cca77c08ef6..3be4be5cb43 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/contracts/FirAbstractContractResolveTransformerDispatcher.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/contracts/FirAbstractContractResolveTransformerDispatcher.kt @@ -6,6 +6,7 @@ package org.jetbrains.kotlin.fir.resolve.transformers.contracts import org.jetbrains.kotlin.KtFakeSourceElementKind +import org.jetbrains.kotlin.fir.FirFileAnnotationsContainer import org.jetbrains.kotlin.fir.FirSession import org.jetbrains.kotlin.fir.contracts.FirLegacyRawContractDescription import org.jetbrains.kotlin.fir.contracts.FirRawContractDescription @@ -321,6 +322,13 @@ abstract class FirAbstractContractResolveTransformerDispatcher( return danglingModifierList } + override fun transformFileAnnotationsContainer( + fileAnnotationsContainer: FirFileAnnotationsContainer, + data: ResolutionMode + ): FirFileAnnotationsContainer { + return fileAnnotationsContainer + } + override fun transformErrorPrimaryConstructor( errorPrimaryConstructor: FirErrorPrimaryConstructor, data: ResolutionMode,