[FIR] Fix resolution of plugin annotations annotated with meta annotations

There was a problem, that after founding of new annotation with meta
  annotation we did not come back to previous files, which may contain
  declarations with this new annotation
This commit is contained in:
Dmitriy Novozhilov
2022-05-24 09:18:05 +03:00
committed by teamcity
parent 055865a2a1
commit f34061acc1
4 changed files with 52 additions and 20 deletions
@@ -11,7 +11,6 @@ import org.jetbrains.kotlin.analysis.low.level.api.fir.lazy.resolve.ResolveTreeB
import org.jetbrains.kotlin.analysis.low.level.api.fir.util.ensurePhase
import org.jetbrains.kotlin.fir.FirSession
import org.jetbrains.kotlin.fir.declarations.*
import org.jetbrains.kotlin.fir.resolve.ResolutionMode
import org.jetbrains.kotlin.fir.resolve.ScopeSession
import org.jetbrains.kotlin.fir.resolve.transformers.plugin.FirCompilerRequiredAnnotationsResolveTransformer
@@ -25,7 +24,7 @@ internal class LLFirDesignatedAnnotationsResolveTransformed(
if (!designationIterator.hasNext()) {
val declaration = designation.declaration
if (declaration is FirRegularClass || declaration is FirTypeAlias) {
declaration.transform<FirDeclaration, ResolutionMode>(this, ResolutionMode.ContextIndependent)
declaration.transform<FirDeclaration, Mode>(this, Mode.RegularAnnotations)
}
return
}
@@ -71,4 +70,4 @@ internal class LLFirDesignatedAnnotationsResolveTransformed(
}
}
}
}