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 16ee44aa641..e6ce040e726 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 @@ -271,13 +271,12 @@ class FirDeclarationsResolveTransformer(transformer: FirBodyResolveTransformer) } override fun transformRegularClass(regularClass: FirRegularClass, data: ResolutionMode): CompositeTransformResult { + context.storeClass(regularClass) + if (regularClass.symbol.classId.isLocal && regularClass !in context.targetedLocalClasses) { - return regularClass.runAllPhasesForLocalClass(components, data).also { - context.storeClass(it) - }.compose() + return regularClass.runAllPhasesForLocalClass(components, data).compose() } - context.storeClass(regularClass) return withTypeParametersOf(regularClass) { val oldConstructorScope = primaryConstructorParametersScope val oldContainingClass = containingClass