diff --git a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/TopDownAnalyzerFacadeForJVM.kt b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/TopDownAnalyzerFacadeForJVM.kt index fe41b632557..6e04c6da1d1 100644 --- a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/TopDownAnalyzerFacadeForJVM.kt +++ b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/TopDownAnalyzerFacadeForJVM.kt @@ -324,7 +324,8 @@ private fun getModuleDescriptorByLibrary( LanguageVersionSettingsImpl.DEFAULT, LockBasedStorageManager.NO_LOCKS, null, - packageAccessHandler = null // TODO: This is a speed optimization used by Native. Don't bother for now. + packageAccessHandler = null, // TODO: This is a speed optimization used by Native. Don't bother for now. + lookupTracker = LookupTracker.DO_NOTHING ) val dependencies = current.manifestProperties.propertyList(KLIB_PROPERTY_DEPENDS, escapeInQuotes = true).mapNotNull { diff --git a/compiler/cli/src/org/jetbrains/kotlin/cli/metadata/K2MetadataKlibSerializer.kt b/compiler/cli/src/org/jetbrains/kotlin/cli/metadata/K2MetadataKlibSerializer.kt index 3dfe5094e16..bfbfd2ee881 100644 --- a/compiler/cli/src/org/jetbrains/kotlin/cli/metadata/K2MetadataKlibSerializer.kt +++ b/compiler/cli/src/org/jetbrains/kotlin/cli/metadata/K2MetadataKlibSerializer.kt @@ -24,6 +24,7 @@ import org.jetbrains.kotlin.descriptors.ModuleDescriptor import org.jetbrains.kotlin.descriptors.PackageFragmentProvider import org.jetbrains.kotlin.descriptors.impl.ModuleDescriptorImpl import org.jetbrains.kotlin.descriptors.konan.DeserializedKlibModuleOrigin +import org.jetbrains.kotlin.incremental.components.LookupTracker import org.jetbrains.kotlin.konan.util.KlibMetadataFactories import org.jetbrains.kotlin.library.* import org.jetbrains.kotlin.library.impl.BuiltInsPlatform @@ -214,7 +215,8 @@ private class KlibMetadataDependencyContainer( storageManager = LockBasedStorageManager("KlibMetadataPackageFragmentProvider"), moduleDescriptor = libraryModuleDescriptor, configuration = CompilerDeserializationConfiguration(languageVersionSettings), - compositePackageFragmentAddend = null + compositePackageFragmentAddend = null, + lookupTracker = LookupTracker.DO_NOTHING ).also { libraryModuleDescriptor.initialize(it) } diff --git a/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/TopDownAnalyzerFacadeForJSIR.kt b/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/TopDownAnalyzerFacadeForJSIR.kt index b68449857c1..52e63ad57cd 100644 --- a/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/TopDownAnalyzerFacadeForJSIR.kt +++ b/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/TopDownAnalyzerFacadeForJSIR.kt @@ -25,7 +25,8 @@ object TopDownAnalyzerFacadeForJSIR : AbstractTopDownAnalyzerFacadeForJS() { incrementalData.compiledPackageParts.values.map { it.metadata }, moduleContext.storageManager, moduleContext.module, - CompilerDeserializationConfiguration(languageVersionSettings) + CompilerDeserializationConfiguration(languageVersionSettings), + lookupTracker ) } } \ No newline at end of file diff --git a/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/klib.kt b/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/klib.kt index e36ebd2d8d3..641b0788fac 100644 --- a/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/klib.kt +++ b/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/klib.kt @@ -26,6 +26,7 @@ import org.jetbrains.kotlin.config.* import org.jetbrains.kotlin.descriptors.DeclarationDescriptor import org.jetbrains.kotlin.descriptors.ModuleDescriptor import org.jetbrains.kotlin.descriptors.impl.ModuleDescriptorImpl +import org.jetbrains.kotlin.incremental.components.LookupTracker import org.jetbrains.kotlin.ir.backend.js.lower.serialization.ir.* import org.jetbrains.kotlin.ir.backend.js.lower.serialization.metadata.KlibMetadataIncrementalSerializer import org.jetbrains.kotlin.ir.declarations.IrModuleFragment @@ -316,7 +317,8 @@ fun getModuleDescriptorByLibrary(current: KotlinLibrary, mapping: Map, storageManager: StorageManager, moduleDescriptor: ModuleDescriptor, - configuration: DeserializationConfiguration + configuration: DeserializationConfiguration, + lookupTracker: LookupTracker ): PackageFragmentProvider } diff --git a/compiler/util-klib-metadata/src/org/jetbrains/kotlin/library/metadata/impl/KlibMetadataModuleDescriptorFactoryImpl.kt b/compiler/util-klib-metadata/src/org/jetbrains/kotlin/library/metadata/impl/KlibMetadataModuleDescriptorFactoryImpl.kt index 0c66cfb7e4f..3ffe0524d52 100644 --- a/compiler/util-klib-metadata/src/org/jetbrains/kotlin/library/metadata/impl/KlibMetadataModuleDescriptorFactoryImpl.kt +++ b/compiler/util-klib-metadata/src/org/jetbrains/kotlin/library/metadata/impl/KlibMetadataModuleDescriptorFactoryImpl.kt @@ -46,7 +46,8 @@ class KlibMetadataModuleDescriptorFactoryImpl( languageVersionSettings: LanguageVersionSettings, storageManager: StorageManager, builtIns: KotlinBuiltIns?, - packageAccessHandler: PackageAccessHandler? + packageAccessHandler: PackageAccessHandler?, + lookupTracker: LookupTracker ): ModuleDescriptorImpl { val libraryProto = parseModuleHeader(library.moduleHeaderData) @@ -73,7 +74,8 @@ class KlibMetadataModuleDescriptorFactoryImpl( storageManager, moduleDescriptor, deserializationConfiguration, - compositePackageFragmentAddend + compositePackageFragmentAddend, + lookupTracker ) moduleDescriptor.initialize(provider) @@ -85,16 +87,16 @@ class KlibMetadataModuleDescriptorFactoryImpl( byteArrays: List, storageManager: StorageManager, moduleDescriptor: ModuleDescriptor, - configuration: DeserializationConfiguration - - ): PackageFragmentProvider { + configuration: DeserializationConfiguration, + lookupTracker: LookupTracker + ): PackageFragmentProvider { val deserializedPackageFragments = packageFragmentsFactory.createCachedPackageFragments( byteArrays, moduleDescriptor, storageManager ) val provider = PackageFragmentProviderImpl(deserializedPackageFragments) return initializePackageFragmentProvider(provider, deserializedPackageFragments, storageManager, - moduleDescriptor, configuration, null) + moduleDescriptor, configuration, null, lookupTracker) } override fun createPackageFragmentProvider( @@ -104,7 +106,8 @@ class KlibMetadataModuleDescriptorFactoryImpl( storageManager: StorageManager, moduleDescriptor: ModuleDescriptor, configuration: DeserializationConfiguration, - compositePackageFragmentAddend: PackageFragmentProvider? + compositePackageFragmentAddend: PackageFragmentProvider?, + lookupTracker: LookupTracker ): PackageFragmentProvider { val deserializedPackageFragments = packageFragmentsFactory.createDeserializedPackageFragments( @@ -118,7 +121,7 @@ class KlibMetadataModuleDescriptorFactoryImpl( val provider = PackageFragmentProviderImpl(deserializedPackageFragments + syntheticPackageFragments) return initializePackageFragmentProvider(provider, deserializedPackageFragments, storageManager, - moduleDescriptor, configuration, compositePackageFragmentAddend) + moduleDescriptor, configuration, compositePackageFragmentAddend, lookupTracker) } fun initializePackageFragmentProvider( @@ -127,7 +130,8 @@ class KlibMetadataModuleDescriptorFactoryImpl( storageManager: StorageManager, moduleDescriptor: ModuleDescriptor, configuration: DeserializationConfiguration, - compositePackageFragmentAddend: PackageFragmentProvider? + compositePackageFragmentAddend: PackageFragmentProvider?, + lookupTracker: LookupTracker ): PackageFragmentProvider { val notFoundClasses = NotFoundClasses(storageManager, moduleDescriptor) @@ -147,7 +151,7 @@ class KlibMetadataModuleDescriptorFactoryImpl( provider, LocalClassifierTypeSettings.Default, ErrorReporter.DO_NOTHING, - LookupTracker.DO_NOTHING, + lookupTracker, flexibleTypeDeserializer, emptyList(), notFoundClasses, diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/caches/resolve/CommonPlatformKindResolution.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/caches/resolve/CommonPlatformKindResolution.kt index 22827bfdcf7..ab854ef3790 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/caches/resolve/CommonPlatformKindResolution.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/caches/resolve/CommonPlatformKindResolution.kt @@ -29,6 +29,7 @@ import org.jetbrains.kotlin.idea.framework.CommonLibraryKind import org.jetbrains.kotlin.idea.klib.AbstractKlibLibraryInfo import org.jetbrains.kotlin.idea.klib.createKlibPackageFragmentProvider import org.jetbrains.kotlin.idea.klib.isKlibLibraryRootForPlatform +import org.jetbrains.kotlin.incremental.components.LookupTracker import org.jetbrains.kotlin.konan.util.KlibMetadataFactories import org.jetbrains.kotlin.library.metadata.NullFlexibleTypeDeserializer import org.jetbrains.kotlin.platform.CommonPlatforms @@ -84,7 +85,8 @@ class CommonPlatformKindResolution : IdePlatformKindResolution { storageManager = storageManager, metadataModuleDescriptorFactory = metadataModuleDescriptorFactory, languageVersionSettings = languageVersionSettings, - moduleDescriptor = moduleDescriptor + moduleDescriptor = moduleDescriptor, + lookupTracker = LookupTracker.DO_NOTHING ) } diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/caches/resolve/CompositeResolverForModuleFactory.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/caches/resolve/CompositeResolverForModuleFactory.kt index ecc934399ba..e66173e50cd 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/caches/resolve/CompositeResolverForModuleFactory.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/caches/resolve/CompositeResolverForModuleFactory.kt @@ -23,6 +23,7 @@ import org.jetbrains.kotlin.frontend.di.configureStandardResolveComponents import org.jetbrains.kotlin.frontend.java.di.configureJavaSpecificComponents import org.jetbrains.kotlin.frontend.java.di.initializeJavaSpecificComponents import org.jetbrains.kotlin.idea.project.IdeaEnvironment +import org.jetbrains.kotlin.incremental.components.LookupTracker import org.jetbrains.kotlin.load.java.lazy.ModuleClassResolver import org.jetbrains.kotlin.load.java.lazy.ModuleClassResolverImpl import org.jetbrains.kotlin.load.kotlin.PackagePartProvider diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/caches/resolve/JsPlatformKindResolution.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/caches/resolve/JsPlatformKindResolution.kt index 06c497a9053..88343531710 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/caches/resolve/JsPlatformKindResolution.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/caches/resolve/JsPlatformKindResolution.kt @@ -27,6 +27,7 @@ import org.jetbrains.kotlin.idea.framework.JSLibraryKind import org.jetbrains.kotlin.idea.klib.AbstractKlibLibraryInfo import org.jetbrains.kotlin.idea.klib.createKlibPackageFragmentProvider import org.jetbrains.kotlin.idea.klib.isKlibLibraryRootForPlatform +import org.jetbrains.kotlin.incremental.components.LookupTracker import org.jetbrains.kotlin.konan.util.KlibMetadataFactories import org.jetbrains.kotlin.platform.TargetPlatform import org.jetbrains.kotlin.platform.impl.JsIdePlatformKind @@ -90,7 +91,8 @@ class JsPlatformKindResolution : IdePlatformKindResolution { storageManager = storageManager, metadataModuleDescriptorFactory = metadataModuleDescriptorFactory, languageVersionSettings = languageVersionSettings, - moduleDescriptor = moduleDescriptor + moduleDescriptor = moduleDescriptor, + lookupTracker = LookupTracker.DO_NOTHING ) } diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/klib/utils.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/klib/utils.kt index d6283ce373a..69efdffd7e5 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/klib/utils.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/klib/utils.kt @@ -19,6 +19,7 @@ import org.jetbrains.kotlin.descriptors.ModuleDescriptor import org.jetbrains.kotlin.descriptors.PackageFragmentProvider import org.jetbrains.kotlin.idea.KotlinFileType import org.jetbrains.kotlin.idea.KotlinLanguage +import org.jetbrains.kotlin.incremental.components.LookupTracker import org.jetbrains.kotlin.library.* import org.jetbrains.kotlin.library.impl.BuiltInsPlatform import org.jetbrains.kotlin.platform.TargetPlatform @@ -106,7 +107,8 @@ fun KotlinLibrary.createKlibPackageFragmentProvider( storageManager: StorageManager, metadataModuleDescriptorFactory: KlibMetadataModuleDescriptorFactory, languageVersionSettings: LanguageVersionSettings, - moduleDescriptor: ModuleDescriptor + moduleDescriptor: ModuleDescriptor, + lookupTracker: LookupTracker ): PackageFragmentProvider? { if (!getCompatibilityInfo().isCompatible) return null @@ -119,6 +121,7 @@ fun KotlinLibrary.createKlibPackageFragmentProvider( storageManager = storageManager, moduleDescriptor = moduleDescriptor, configuration = CompilerDeserializationConfiguration(languageVersionSettings), - compositePackageFragmentAddend = null + compositePackageFragmentAddend = null, + lookupTracker = lookupTracker ) } diff --git a/idea/idea-native/src/org/jetbrains/kotlin/ide/konan/NativePlatformKindResolution.kt b/idea/idea-native/src/org/jetbrains/kotlin/ide/konan/NativePlatformKindResolution.kt index f3bb6f6424b..63209ddd5a3 100644 --- a/idea/idea-native/src/org/jetbrains/kotlin/ide/konan/NativePlatformKindResolution.kt +++ b/idea/idea-native/src/org/jetbrains/kotlin/ide/konan/NativePlatformKindResolution.kt @@ -33,6 +33,7 @@ import org.jetbrains.kotlin.idea.caches.project.lazyClosure import org.jetbrains.kotlin.idea.caches.resolve.BuiltInsCacheKey import org.jetbrains.kotlin.idea.compiler.IDELanguageSettingsProvider import org.jetbrains.kotlin.idea.klib.* +import org.jetbrains.kotlin.incremental.components.LookupTracker import org.jetbrains.kotlin.konan.library.KONAN_STDLIB_NAME import org.jetbrains.kotlin.konan.util.KlibMetadataFactories import org.jetbrains.kotlin.library.isInterop @@ -67,7 +68,8 @@ class NativePlatformKindResolution : IdePlatformKindResolution { storageManager = storageManager, metadataModuleDescriptorFactory = metadataFactories.DefaultDeserializedDescriptorFactory, languageVersionSettings = languageVersionSettings, - moduleDescriptor = moduleDescriptor + moduleDescriptor = moduleDescriptor, + lookupTracker = LookupTracker.DO_NOTHING ) } diff --git a/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/konan/NativeDistributionModulesProvider.kt b/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/konan/NativeDistributionModulesProvider.kt index e67f73e1ed9..a43bc18413a 100644 --- a/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/konan/NativeDistributionModulesProvider.kt +++ b/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/konan/NativeDistributionModulesProvider.kt @@ -12,6 +12,7 @@ import org.jetbrains.kotlin.descriptors.commonizer.BuiltInsProvider import org.jetbrains.kotlin.descriptors.commonizer.ModulesProvider import org.jetbrains.kotlin.descriptors.commonizer.utils.NativeFactories import org.jetbrains.kotlin.descriptors.commonizer.utils.createKotlinNativeForwardDeclarationsModule +import org.jetbrains.kotlin.incremental.components.LookupTracker import org.jetbrains.kotlin.konan.library.KONAN_STDLIB_NAME import org.jetbrains.kotlin.storage.StorageManager @@ -42,7 +43,8 @@ internal class NativeDistributionModulesProvider( languageVersionSettings = LanguageVersionSettingsImpl.DEFAULT, storageManager = storageManager, builtIns = builtIns, - packageAccessHandler = null + packageAccessHandler = null, + lookupTracker = LookupTracker.DO_NOTHING ) name to module