[FIR] Share enhancedSymbolStorage between common and platform sessions
This is needed for two reasons: 1. common and platform modules are analyzed in the same setup with same dependencies and configurations, so the results of the enhancement for any function will be completely identical. So by sharing enhanced symbol storage, we avoid recomputation enhanced functions and improve performance 2. There is a goal to have some unique key for IR declarations in FIR2IR. For regular declarations, the key is just Fir symbol, and for fake-overrides it is a pair of original symbol and fake override owners lookup tag. But for enhanced functions the symbol is not unique, because we create different symbols for the same enhanced function for different modules. So this change fixes this problem ^KT-60397 Fixed This change doesn't affect any tests in the moment, because it's part of bigger refactoring of proper storing IR declarations during FIR2IR conversion (KT-61637) Without this change, there are some test breaks in branch for KT-61637: - FirPsiBlackBoxCodegenTestGenerated.Multiplatform.testStarImportOfExpectEnumWithActualTypeAlias - FirPsiBlackBoxCodegenTestGenerated.Multiplatform.K2.DefaultArguments.testNestedEnumEntryValue - FirPsiBlackBoxCodegenTestGenerated.Multiplatform.K2.Basic.testEnumEntryNameCall
This commit is contained in:
committed by
Space Team
parent
f4289e1287
commit
bb36beb364
@@ -16,6 +16,7 @@ import org.jetbrains.kotlin.fir.analysis.checkers.OptInLanguageVersionSettingsCh
|
|||||||
import org.jetbrains.kotlin.fir.checkers.registerExtendedCommonCheckers
|
import org.jetbrains.kotlin.fir.checkers.registerExtendedCommonCheckers
|
||||||
import org.jetbrains.kotlin.fir.extensions.FirExtensionRegistrar
|
import org.jetbrains.kotlin.fir.extensions.FirExtensionRegistrar
|
||||||
import org.jetbrains.kotlin.fir.java.FirProjectSessionProvider
|
import org.jetbrains.kotlin.fir.java.FirProjectSessionProvider
|
||||||
|
import org.jetbrains.kotlin.fir.java.enhancement.FirEnhancedSymbolsStorage
|
||||||
import org.jetbrains.kotlin.fir.session.*
|
import org.jetbrains.kotlin.fir.session.*
|
||||||
import org.jetbrains.kotlin.fir.session.environment.AbstractProjectEnvironment
|
import org.jetbrains.kotlin.fir.session.environment.AbstractProjectEnvironment
|
||||||
import org.jetbrains.kotlin.fir.session.environment.AbstractProjectFileSearchScope
|
import org.jetbrains.kotlin.fir.session.environment.AbstractProjectFileSearchScope
|
||||||
@@ -72,7 +73,7 @@ fun <F> prepareJvmSessions(
|
|||||||
createProviderAndScopeForIncrementalCompilation: (List<F>) -> IncrementalCompilationContext?,
|
createProviderAndScopeForIncrementalCompilation: (List<F>) -> IncrementalCompilationContext?,
|
||||||
): List<SessionWithSources<F>> {
|
): List<SessionWithSources<F>> {
|
||||||
val javaSourcesScope = projectEnvironment.getSearchScopeForProjectJavaSources()
|
val javaSourcesScope = projectEnvironment.getSearchScopeForProjectJavaSources()
|
||||||
|
val enhancementSymbolsStorage = FirEnhancedSymbolsStorage(firCachesFactoryForCliMode)
|
||||||
return prepareSessions(
|
return prepareSessions(
|
||||||
files, configuration, rootModuleName, JvmPlatforms.unspecifiedJvmPlatform,
|
files, configuration, rootModuleName, JvmPlatforms.unspecifiedJvmPlatform,
|
||||||
JvmPlatformAnalyzerServices, metadataCompilationMode = false, libraryList, isCommonSource, fileBelongsToModule,
|
JvmPlatformAnalyzerServices, metadataCompilationMode = false, libraryList, isCommonSource, fileBelongsToModule,
|
||||||
@@ -86,6 +87,7 @@ fun <F> prepareJvmSessions(
|
|||||||
librariesScope,
|
librariesScope,
|
||||||
projectEnvironment.getPackagePartProvider(librariesScope),
|
projectEnvironment.getPackagePartProvider(librariesScope),
|
||||||
configuration.languageVersionSettings,
|
configuration.languageVersionSettings,
|
||||||
|
predefinedEnhancementStorage = enhancementSymbolsStorage,
|
||||||
registerExtraComponents = {},
|
registerExtraComponents = {},
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
@@ -101,6 +103,7 @@ fun <F> prepareJvmSessions(
|
|||||||
configuration.get(CommonConfigurationKeys.LOOKUP_TRACKER),
|
configuration.get(CommonConfigurationKeys.LOOKUP_TRACKER),
|
||||||
configuration.get(CommonConfigurationKeys.ENUM_WHEN_TRACKER),
|
configuration.get(CommonConfigurationKeys.ENUM_WHEN_TRACKER),
|
||||||
configuration.get(CommonConfigurationKeys.IMPORT_TRACKER),
|
configuration.get(CommonConfigurationKeys.IMPORT_TRACKER),
|
||||||
|
predefinedEnhancementStorage = enhancementSymbolsStorage,
|
||||||
needRegisterJavaElementFinder = true,
|
needRegisterJavaElementFinder = true,
|
||||||
registerExtraComponents = {},
|
registerExtraComponents = {},
|
||||||
sessionConfigurator,
|
sessionConfigurator,
|
||||||
|
|||||||
+9
-3
@@ -90,9 +90,12 @@ fun FirSession.registerCommonComponentsAfterExtensionsAreConfigured() {
|
|||||||
register(FirProvidedDeclarationsForMetadataService::class, FirProvidedDeclarationsForMetadataService.create(this))
|
register(FirProvidedDeclarationsForMetadataService::class, FirProvidedDeclarationsForMetadataService.create(this))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
val firCachesFactoryForCliMode: FirCachesFactory
|
||||||
|
get() = FirThreadUnsafeCachesFactory
|
||||||
|
|
||||||
@OptIn(SessionConfiguration::class)
|
@OptIn(SessionConfiguration::class)
|
||||||
fun FirSession.registerCliCompilerOnlyComponents() {
|
fun FirSession.registerCliCompilerOnlyComponents() {
|
||||||
register(FirCachesFactory::class, FirThreadUnsafeCachesFactory)
|
register(FirCachesFactory::class, firCachesFactoryForCliMode)
|
||||||
register(SealedClassInheritorsProvider::class, SealedClassInheritorsProviderImpl)
|
register(SealedClassInheritorsProvider::class, SealedClassInheritorsProviderImpl)
|
||||||
register(FirLazyDeclarationResolver::class, FirDummyCompilerLazyDeclarationResolver)
|
register(FirLazyDeclarationResolver::class, FirDummyCompilerLazyDeclarationResolver)
|
||||||
register(FirExceptionHandler::class, FirCliExceptionHandler)
|
register(FirExceptionHandler::class, FirCliExceptionHandler)
|
||||||
@@ -102,10 +105,13 @@ fun FirSession.registerCliCompilerOnlyComponents() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@OptIn(SessionConfiguration::class)
|
@OptIn(SessionConfiguration::class)
|
||||||
fun FirSession.registerCommonJavaComponents(javaModuleResolver: JavaModuleResolver) {
|
fun FirSession.registerCommonJavaComponents(
|
||||||
|
javaModuleResolver: JavaModuleResolver,
|
||||||
|
predefinedEnhancementStorage: FirEnhancedSymbolsStorage? = null,
|
||||||
|
) {
|
||||||
val jsr305State = languageVersionSettings.getFlag(JvmAnalysisFlags.javaTypeEnhancementState)
|
val jsr305State = languageVersionSettings.getFlag(JvmAnalysisFlags.javaTypeEnhancementState)
|
||||||
register(FirAnnotationTypeQualifierResolver::class, FirAnnotationTypeQualifierResolver(this, jsr305State, javaModuleResolver))
|
register(FirAnnotationTypeQualifierResolver::class, FirAnnotationTypeQualifierResolver(this, jsr305State, javaModuleResolver))
|
||||||
register(FirEnhancedSymbolsStorage::class, FirEnhancedSymbolsStorage(this))
|
register(FirEnhancedSymbolsStorage::class, predefinedEnhancementStorage ?: FirEnhancedSymbolsStorage(this))
|
||||||
register(FirSyntheticPropertiesStorage::class, FirSyntheticPropertiesStorage(this))
|
register(FirSyntheticPropertiesStorage::class, FirSyntheticPropertiesStorage(this))
|
||||||
register(
|
register(
|
||||||
FirJvmDefaultModeComponent::class,
|
FirJvmDefaultModeComponent::class,
|
||||||
|
|||||||
+5
-3
@@ -19,9 +19,9 @@ import org.jetbrains.kotlin.fir.java.FirProjectSessionProvider
|
|||||||
import org.jetbrains.kotlin.fir.java.JavaSymbolProvider
|
import org.jetbrains.kotlin.fir.java.JavaSymbolProvider
|
||||||
import org.jetbrains.kotlin.fir.java.deserialization.JvmClassFileBasedSymbolProvider
|
import org.jetbrains.kotlin.fir.java.deserialization.JvmClassFileBasedSymbolProvider
|
||||||
import org.jetbrains.kotlin.fir.java.deserialization.OptionalAnnotationClassesProvider
|
import org.jetbrains.kotlin.fir.java.deserialization.OptionalAnnotationClassesProvider
|
||||||
|
import org.jetbrains.kotlin.fir.java.enhancement.FirEnhancedSymbolsStorage
|
||||||
import org.jetbrains.kotlin.fir.resolve.providers.impl.FirBuiltinSymbolProvider
|
import org.jetbrains.kotlin.fir.resolve.providers.impl.FirBuiltinSymbolProvider
|
||||||
import org.jetbrains.kotlin.fir.resolve.providers.impl.FirCloneableSymbolProvider
|
import org.jetbrains.kotlin.fir.resolve.providers.impl.FirCloneableSymbolProvider
|
||||||
import org.jetbrains.kotlin.fir.resolve.providers.impl.FirExtensionSyntheticFunctionInterfaceProvider
|
|
||||||
import org.jetbrains.kotlin.fir.resolve.scopes.wrapScopeWithJvmMapped
|
import org.jetbrains.kotlin.fir.resolve.scopes.wrapScopeWithJvmMapped
|
||||||
import org.jetbrains.kotlin.fir.scopes.FirKotlinScopeProvider
|
import org.jetbrains.kotlin.fir.scopes.FirKotlinScopeProvider
|
||||||
import org.jetbrains.kotlin.fir.session.environment.AbstractProjectEnvironment
|
import org.jetbrains.kotlin.fir.session.environment.AbstractProjectEnvironment
|
||||||
@@ -42,6 +42,7 @@ object FirJvmSessionFactory : FirAbstractSessionFactory() {
|
|||||||
scope: AbstractProjectFileSearchScope,
|
scope: AbstractProjectFileSearchScope,
|
||||||
packagePartProvider: PackagePartProvider,
|
packagePartProvider: PackagePartProvider,
|
||||||
languageVersionSettings: LanguageVersionSettings,
|
languageVersionSettings: LanguageVersionSettings,
|
||||||
|
predefinedEnhancementStorage: FirEnhancedSymbolsStorage? = null,
|
||||||
registerExtraComponents: ((FirSession) -> Unit),
|
registerExtraComponents: ((FirSession) -> Unit),
|
||||||
): FirSession {
|
): FirSession {
|
||||||
return createLibrarySession(
|
return createLibrarySession(
|
||||||
@@ -51,7 +52,7 @@ object FirJvmSessionFactory : FirAbstractSessionFactory() {
|
|||||||
languageVersionSettings,
|
languageVersionSettings,
|
||||||
extensionRegistrars,
|
extensionRegistrars,
|
||||||
registerExtraComponents = {
|
registerExtraComponents = {
|
||||||
it.registerCommonJavaComponents(projectEnvironment.getJavaModuleResolver())
|
it.registerCommonJavaComponents(projectEnvironment.getJavaModuleResolver(), predefinedEnhancementStorage)
|
||||||
registerExtraComponents(it)
|
registerExtraComponents(it)
|
||||||
},
|
},
|
||||||
createKotlinScopeProvider = { FirKotlinScopeProvider(::wrapScopeWithJvmMapped) },
|
createKotlinScopeProvider = { FirKotlinScopeProvider(::wrapScopeWithJvmMapped) },
|
||||||
@@ -91,6 +92,7 @@ object FirJvmSessionFactory : FirAbstractSessionFactory() {
|
|||||||
lookupTracker: LookupTracker? = null,
|
lookupTracker: LookupTracker? = null,
|
||||||
enumWhenTracker: EnumWhenTracker? = null,
|
enumWhenTracker: EnumWhenTracker? = null,
|
||||||
importTracker: ImportTracker? = null,
|
importTracker: ImportTracker? = null,
|
||||||
|
predefinedEnhancementStorage: FirEnhancedSymbolsStorage? = null,
|
||||||
needRegisterJavaElementFinder: Boolean,
|
needRegisterJavaElementFinder: Boolean,
|
||||||
registerExtraComponents: ((FirSession) -> Unit) = {},
|
registerExtraComponents: ((FirSession) -> Unit) = {},
|
||||||
init: FirSessionConfigurator.() -> Unit = {}
|
init: FirSessionConfigurator.() -> Unit = {}
|
||||||
@@ -105,7 +107,7 @@ object FirJvmSessionFactory : FirAbstractSessionFactory() {
|
|||||||
importTracker,
|
importTracker,
|
||||||
init,
|
init,
|
||||||
registerExtraComponents = {
|
registerExtraComponents = {
|
||||||
it.registerCommonJavaComponents(projectEnvironment.getJavaModuleResolver())
|
it.registerCommonJavaComponents(projectEnvironment.getJavaModuleResolver(), predefinedEnhancementStorage)
|
||||||
it.registerJavaSpecificResolveComponents()
|
it.registerJavaSpecificResolveComponents()
|
||||||
registerExtraComponents(it)
|
registerExtraComponents(it)
|
||||||
},
|
},
|
||||||
|
|||||||
+2
-2
@@ -76,9 +76,9 @@ object FirSessionFactoryHelper {
|
|||||||
lookupTracker,
|
lookupTracker,
|
||||||
enumWhenTracker,
|
enumWhenTracker,
|
||||||
importTracker,
|
importTracker,
|
||||||
needRegisterJavaElementFinder,
|
needRegisterJavaElementFinder = needRegisterJavaElementFinder,
|
||||||
registerExtraComponents = {},
|
registerExtraComponents = {},
|
||||||
sessionConfigurator,
|
init = sessionConfigurator,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -747,8 +747,8 @@ private class EnhancementSignatureParts(
|
|||||||
get() = (this as ConeTypeParameterLookupTag).symbol.fir.origin is FirDeclarationOrigin.Java
|
get() = (this as ConeTypeParameterLookupTag).symbol.fir.origin is FirDeclarationOrigin.Java
|
||||||
}
|
}
|
||||||
|
|
||||||
class FirEnhancedSymbolsStorage(val session: FirSession) : FirSessionComponent {
|
class FirEnhancedSymbolsStorage(private val cachesFactory: FirCachesFactory) : FirSessionComponent {
|
||||||
private val cachesFactory = session.firCachesFactory
|
constructor(session: FirSession) : this(session.firCachesFactory)
|
||||||
|
|
||||||
val cacheByOwner: FirCache<FirRegularClassSymbol, EnhancementSymbolsCache, Nothing?> =
|
val cacheByOwner: FirCache<FirRegularClassSymbol, EnhancementSymbolsCache, Nothing?> =
|
||||||
cachesFactory.createCache { _ -> EnhancementSymbolsCache(cachesFactory) }
|
cachesFactory.createCache { _ -> EnhancementSymbolsCache(cachesFactory) }
|
||||||
|
|||||||
+16
-9
@@ -25,10 +25,8 @@ import org.jetbrains.kotlin.fir.checkers.registerExtendedCommonCheckers
|
|||||||
import org.jetbrains.kotlin.fir.deserialization.ModuleDataProvider
|
import org.jetbrains.kotlin.fir.deserialization.ModuleDataProvider
|
||||||
import org.jetbrains.kotlin.fir.extensions.FirExtensionRegistrar
|
import org.jetbrains.kotlin.fir.extensions.FirExtensionRegistrar
|
||||||
import org.jetbrains.kotlin.fir.java.FirProjectSessionProvider
|
import org.jetbrains.kotlin.fir.java.FirProjectSessionProvider
|
||||||
import org.jetbrains.kotlin.fir.session.FirCommonSessionFactory
|
import org.jetbrains.kotlin.fir.java.enhancement.FirEnhancedSymbolsStorage
|
||||||
import org.jetbrains.kotlin.fir.session.FirJvmSessionFactory
|
import org.jetbrains.kotlin.fir.session.*
|
||||||
import org.jetbrains.kotlin.fir.session.FirNativeSessionFactory
|
|
||||||
import org.jetbrains.kotlin.fir.session.FirSessionConfigurator
|
|
||||||
import org.jetbrains.kotlin.fir.session.environment.AbstractProjectEnvironment
|
import org.jetbrains.kotlin.fir.session.environment.AbstractProjectEnvironment
|
||||||
import org.jetbrains.kotlin.js.config.JSConfigurationKeys
|
import org.jetbrains.kotlin.js.config.JSConfigurationKeys
|
||||||
import org.jetbrains.kotlin.js.config.WasmTarget
|
import org.jetbrains.kotlin.js.config.WasmTarget
|
||||||
@@ -54,6 +52,7 @@ import org.jetbrains.kotlin.test.services.*
|
|||||||
import org.jetbrains.kotlin.test.services.configuration.JsEnvironmentConfigurator
|
import org.jetbrains.kotlin.test.services.configuration.JsEnvironmentConfigurator
|
||||||
import org.jetbrains.kotlin.test.services.configuration.NativeEnvironmentConfigurator
|
import org.jetbrains.kotlin.test.services.configuration.NativeEnvironmentConfigurator
|
||||||
import org.jetbrains.kotlin.test.services.configuration.WasmEnvironmentConfigurator
|
import org.jetbrains.kotlin.test.services.configuration.WasmEnvironmentConfigurator
|
||||||
|
import org.jetbrains.kotlin.utils.addToStdlib.runIf
|
||||||
import java.nio.file.Paths
|
import java.nio.file.Paths
|
||||||
|
|
||||||
open class FirFrontendFacade(
|
open class FirFrontendFacade(
|
||||||
@@ -97,6 +96,8 @@ open class FirFrontendFacade(
|
|||||||
|
|
||||||
val project = testServices.compilerConfigurationProvider.getProject(module)
|
val project = testServices.compilerConfigurationProvider.getProject(module)
|
||||||
val extensionRegistrars = FirExtensionRegistrar.getInstances(project)
|
val extensionRegistrars = FirExtensionRegistrar.getInstances(project)
|
||||||
|
val targetPlatform = module.targetPlatform
|
||||||
|
val enhancedSymbolsStorage = runIf(targetPlatform.isJvm()) { FirEnhancedSymbolsStorage(firCachesFactoryForCliMode) }
|
||||||
val projectEnvironment = createLibrarySession(
|
val projectEnvironment = createLibrarySession(
|
||||||
module,
|
module,
|
||||||
project,
|
project,
|
||||||
@@ -104,12 +105,12 @@ open class FirFrontendFacade(
|
|||||||
testServices.firModuleInfoProvider.firSessionProvider,
|
testServices.firModuleInfoProvider.firSessionProvider,
|
||||||
moduleDataProvider,
|
moduleDataProvider,
|
||||||
testServices.compilerConfigurationProvider.getCompilerConfiguration(module),
|
testServices.compilerConfigurationProvider.getCompilerConfiguration(module),
|
||||||
extensionRegistrars
|
extensionRegistrars,
|
||||||
|
enhancedSymbolsStorage
|
||||||
)
|
)
|
||||||
|
|
||||||
val targetPlatform = module.targetPlatform
|
|
||||||
val firOutputPartForDependsOnModules = sortedModules.map {
|
val firOutputPartForDependsOnModules = sortedModules.map {
|
||||||
analyze(it, moduleDataMap[it]!!, targetPlatform, projectEnvironment, extensionRegistrars)
|
analyze(it, moduleDataMap[it]!!, targetPlatform, projectEnvironment, extensionRegistrars, enhancedSymbolsStorage)
|
||||||
}
|
}
|
||||||
|
|
||||||
return FirOutputArtifactImpl(firOutputPartForDependsOnModules)
|
return FirOutputArtifactImpl(firOutputPartForDependsOnModules)
|
||||||
@@ -170,7 +171,8 @@ open class FirFrontendFacade(
|
|||||||
sessionProvider: FirProjectSessionProvider,
|
sessionProvider: FirProjectSessionProvider,
|
||||||
moduleDataProvider: ModuleDataProvider,
|
moduleDataProvider: ModuleDataProvider,
|
||||||
configuration: CompilerConfiguration,
|
configuration: CompilerConfiguration,
|
||||||
extensionRegistrars: List<FirExtensionRegistrar>
|
extensionRegistrars: List<FirExtensionRegistrar>,
|
||||||
|
enhancedSymbolsStorage: FirEnhancedSymbolsStorage?
|
||||||
): AbstractProjectEnvironment? {
|
): AbstractProjectEnvironment? {
|
||||||
val compilerConfigurationProvider = testServices.compilerConfigurationProvider
|
val compilerConfigurationProvider = testServices.compilerConfigurationProvider
|
||||||
val projectEnvironment: AbstractProjectEnvironment?
|
val projectEnvironment: AbstractProjectEnvironment?
|
||||||
@@ -208,6 +210,7 @@ open class FirFrontendFacade(
|
|||||||
projectFileSearchScope,
|
projectFileSearchScope,
|
||||||
packagePartProvider,
|
packagePartProvider,
|
||||||
languageVersionSettings,
|
languageVersionSettings,
|
||||||
|
predefinedEnhancementStorage = enhancedSymbolsStorage,
|
||||||
registerExtraComponents = ::registerExtraComponents,
|
registerExtraComponents = ::registerExtraComponents,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
@@ -264,6 +267,7 @@ open class FirFrontendFacade(
|
|||||||
targetPlatform: TargetPlatform,
|
targetPlatform: TargetPlatform,
|
||||||
projectEnvironment: AbstractProjectEnvironment?,
|
projectEnvironment: AbstractProjectEnvironment?,
|
||||||
extensionRegistrars: List<FirExtensionRegistrar>,
|
extensionRegistrars: List<FirExtensionRegistrar>,
|
||||||
|
enhancedSymbolsStorage: FirEnhancedSymbolsStorage?,
|
||||||
): FirOutputPartForDependsOnModule {
|
): FirOutputPartForDependsOnModule {
|
||||||
val compilerConfigurationProvider = testServices.compilerConfigurationProvider
|
val compilerConfigurationProvider = testServices.compilerConfigurationProvider
|
||||||
val moduleInfoProvider = testServices.firModuleInfoProvider
|
val moduleInfoProvider = testServices.firModuleInfoProvider
|
||||||
@@ -297,6 +301,7 @@ open class FirFrontendFacade(
|
|||||||
projectEnvironment,
|
projectEnvironment,
|
||||||
extensionRegistrars,
|
extensionRegistrars,
|
||||||
sessionConfigurator,
|
sessionConfigurator,
|
||||||
|
enhancedSymbolsStorage,
|
||||||
project,
|
project,
|
||||||
ktFiles
|
ktFiles
|
||||||
)
|
)
|
||||||
@@ -325,8 +330,9 @@ open class FirFrontendFacade(
|
|||||||
projectEnvironment: AbstractProjectEnvironment?,
|
projectEnvironment: AbstractProjectEnvironment?,
|
||||||
extensionRegistrars: List<FirExtensionRegistrar>,
|
extensionRegistrars: List<FirExtensionRegistrar>,
|
||||||
sessionConfigurator: FirSessionConfigurator.() -> Unit,
|
sessionConfigurator: FirSessionConfigurator.() -> Unit,
|
||||||
|
enhancedSymbolsStorage: FirEnhancedSymbolsStorage?,
|
||||||
project: Project,
|
project: Project,
|
||||||
ktFiles: Collection<KtFile>
|
ktFiles: Collection<KtFile>,
|
||||||
): FirSession {
|
): FirSession {
|
||||||
val languageVersionSettings = module.languageVersionSettings
|
val languageVersionSettings = module.languageVersionSettings
|
||||||
return when {
|
return when {
|
||||||
@@ -351,6 +357,7 @@ open class FirFrontendFacade(
|
|||||||
incrementalCompilationContext = null,
|
incrementalCompilationContext = null,
|
||||||
extensionRegistrars,
|
extensionRegistrars,
|
||||||
languageVersionSettings,
|
languageVersionSettings,
|
||||||
|
predefinedEnhancementStorage = enhancedSymbolsStorage,
|
||||||
needRegisterJavaElementFinder = true,
|
needRegisterJavaElementFinder = true,
|
||||||
registerExtraComponents = ::registerExtraComponents,
|
registerExtraComponents = ::registerExtraComponents,
|
||||||
init = sessionConfigurator,
|
init = sessionConfigurator,
|
||||||
|
|||||||
Reference in New Issue
Block a user