diff --git a/compiler/frontend.java/src/org/jetbrains/kotlin/frontend/java/di/injection.kt b/compiler/frontend.java/src/org/jetbrains/kotlin/frontend/java/di/injection.kt index 675fdb578ef..fa0a131ee84 100644 --- a/compiler/frontend.java/src/org/jetbrains/kotlin/frontend/java/di/injection.kt +++ b/compiler/frontend.java/src/org/jetbrains/kotlin/frontend/java/di/injection.kt @@ -69,7 +69,7 @@ fun StorageComponentContainer.configureJavaTopDownAnalysis( useImpl() useImpl() useImpl() - useImpl() + useInstance(SamWithReceiverResolver()) useImpl() useImpl() useInstance(InternalFlexibleTypeTransformer) diff --git a/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/TopDownAnalyzerFacadeForJVM.kt b/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/TopDownAnalyzerFacadeForJVM.kt index 4dbaedca806..81eef5da2e2 100644 --- a/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/TopDownAnalyzerFacadeForJVM.kt +++ b/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/TopDownAnalyzerFacadeForJVM.kt @@ -82,8 +82,6 @@ object TopDownAnalyzerFacadeForJVM { project, files, trace, configuration, packagePartProvider, declarationProviderFactory, sourceModuleSearchScope ) - StorageComponentContainerContributor.getInstances(project).forEach { it.onContainerComposed(container, null) } - val module = container.get() val moduleContext = container.get() @@ -162,6 +160,8 @@ object TopDownAnalyzerFacadeForJVM { packagePartProvider(dependencyScope), languageVersionSettings, moduleClassResolver ) + StorageComponentContainerContributor.getInstances(project).forEach { it.onContainerComposed(dependenciesContainer, null) } + moduleClassResolver.compiledCodeResolver = dependenciesContainer.get() dependenciesContext.setDependencies(listOfNotNull(dependenciesContext.module, optionalBuiltInsModule)) @@ -185,6 +185,7 @@ object TopDownAnalyzerFacadeForJVM { languageVersionSettings, moduleClassResolver ).apply { initJvmBuiltInsForTopDownAnalysis(module, languageVersionSettings) + StorageComponentContainerContributor.getInstances(project).forEach { it.onContainerComposed(this, null) } } moduleClassResolver.sourceCodeResolver = container.get()