[K2/N] KT-56030: Support Objective-C overloading by param names only
Merge-request: KT-MR-8901 Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
This commit is contained in:
committed by
Space Team
parent
c957a0b43b
commit
b9633375b4
@@ -21,6 +21,7 @@ import org.jetbrains.kotlin.fir.backend.jvm.FirJvmVisibilityConverter
|
||||
import org.jetbrains.kotlin.fir.declarations.FirFile
|
||||
import org.jetbrains.kotlin.fir.languageVersionSettings
|
||||
import org.jetbrains.kotlin.fir.resolve.ScopeSession
|
||||
import org.jetbrains.kotlin.fir.signaturer.FirMangler
|
||||
import org.jetbrains.kotlin.ir.backend.jvm.serialization.JvmDescriptorMangler
|
||||
import org.jetbrains.kotlin.ir.backend.jvm.serialization.JvmIrMangler
|
||||
import org.jetbrains.kotlin.ir.declarations.IrModuleFragment
|
||||
@@ -55,6 +56,7 @@ fun FirResult.convertToIrAndActualizeForJvm(
|
||||
linkViaSignatures = linkViaSignatures,
|
||||
signatureComposerCreator = { JvmIdSignatureDescriptor(JvmDescriptorMangler(null)) },
|
||||
irMangler = JvmIrMangler,
|
||||
firManglerCreator = { FirJvmKotlinMangler() },
|
||||
visibilityConverter = FirJvmVisibilityConverter,
|
||||
diagnosticReporter = diagnosticReporter,
|
||||
languageVersionSettings = languageVersionSettings,
|
||||
@@ -67,6 +69,7 @@ fun FirResult.convertToIrAndActualize(
|
||||
linkViaSignatures: Boolean,
|
||||
signatureComposerCreator: (() -> IdSignatureComposer)?,
|
||||
irMangler: KotlinMangler.IrMangler,
|
||||
firManglerCreator: () -> FirMangler,
|
||||
visibilityConverter: Fir2IrVisibilityConverter,
|
||||
kotlinBuiltIns: KotlinBuiltIns,
|
||||
diagnosticReporter: DiagnosticReporter,
|
||||
@@ -79,7 +82,7 @@ fun FirResult.convertToIrAndActualize(
|
||||
val commonMemberStorage = Fir2IrCommonMemberStorage(
|
||||
generateSignatures = linkViaSignatures,
|
||||
signatureComposerCreator = signatureComposerCreator,
|
||||
manglerCreator = { FirJvmKotlinMangler() } // TODO: replace with potentially simpler version for other backends.
|
||||
manglerCreator = firManglerCreator
|
||||
)
|
||||
|
||||
when (outputs.size) {
|
||||
@@ -94,7 +97,9 @@ fun FirResult.convertToIrAndActualize(
|
||||
irMangler,
|
||||
visibilityConverter,
|
||||
kotlinBuiltIns,
|
||||
)
|
||||
).also { result ->
|
||||
fir2IrResultPostCompute(result)
|
||||
}
|
||||
actualizationResult = null
|
||||
}
|
||||
else -> {
|
||||
|
||||
@@ -37,6 +37,7 @@ import org.jetbrains.kotlin.fir.resolve.providers.impl.FirTypeResolverImpl
|
||||
import org.jetbrains.kotlin.fir.resolve.transformers.FirDummyCompilerLazyDeclarationResolver
|
||||
import org.jetbrains.kotlin.fir.resolve.transformers.PlatformSupertypeUpdater
|
||||
import org.jetbrains.kotlin.fir.resolve.transformers.plugin.GeneratedClassIndex
|
||||
import org.jetbrains.kotlin.fir.scopes.FirOverrideChecker
|
||||
import org.jetbrains.kotlin.fir.scopes.FirOverrideService
|
||||
import org.jetbrains.kotlin.fir.scopes.FirPlatformClassMapper
|
||||
import org.jetbrains.kotlin.fir.scopes.PlatformSpecificOverridabilityRules
|
||||
@@ -70,6 +71,8 @@ fun FirSession.registerCommonComponents(languageVersionSettings: LanguageVersion
|
||||
register(FirSamConstructorStorage::class, FirSamConstructorStorage(this))
|
||||
register(FirOverrideService::class, FirOverrideService(this))
|
||||
register(FirDynamicMembersStorage::class, FirDynamicMembersStorage(this))
|
||||
register(FirEnumEntriesSupport::class, FirEnumEntriesSupport(this))
|
||||
register(FirOverrideChecker::class, FirStandardOverrideChecker(this))
|
||||
}
|
||||
|
||||
@OptIn(SessionConfiguration::class)
|
||||
|
||||
@@ -21,7 +21,6 @@ import org.jetbrains.kotlin.fir.resolve.providers.impl.FirBuiltinSymbolProvider
|
||||
import org.jetbrains.kotlin.fir.resolve.providers.impl.FirExtensionSyntheticFunctionInterfaceProvider
|
||||
import org.jetbrains.kotlin.fir.scopes.FirKotlinScopeProvider
|
||||
import org.jetbrains.kotlin.fir.scopes.FirPlatformClassMapper
|
||||
import org.jetbrains.kotlin.fir.scopes.impl.FirEnumEntriesSupport
|
||||
import org.jetbrains.kotlin.incremental.components.LookupTracker
|
||||
import org.jetbrains.kotlin.library.KotlinLibrary
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
@@ -98,6 +97,5 @@ object FirJsSessionFactory : FirAbstractSessionFactory() {
|
||||
register(ConeCallConflictResolverFactory::class, JsCallConflictResolverFactory)
|
||||
register(FirPlatformClassMapper::class, FirPlatformClassMapper.Default)
|
||||
register(FirOverridesBackwardCompatibilityHelper::class, FirOverridesBackwardCompatibilityHelper.Default())
|
||||
register(FirEnumEntriesSupport::class, FirEnumEntriesSupport(this))
|
||||
}
|
||||
}
|
||||
|
||||
+3
-1
@@ -37,7 +37,9 @@ object FirNativeSessionFactory : FirAbstractSessionFactory() {
|
||||
moduleDataProvider,
|
||||
languageVersionSettings,
|
||||
extensionRegistrars,
|
||||
registerExtraComponents,
|
||||
registerExtraComponents = { session ->
|
||||
registerExtraComponents(session)
|
||||
},
|
||||
createKotlinScopeProvider = { FirKotlinScopeProvider { _, declaredMemberScope, _, _, _ -> declaredMemberScope } },
|
||||
createProviders = { session, builtinsModuleData, kotlinScopeProvider ->
|
||||
val forwardDeclarationsModuleData = BinaryModuleData.createDependencyModuleData(
|
||||
|
||||
-2
@@ -13,7 +13,6 @@ import org.jetbrains.kotlin.fir.extensions.FirExtensionRegistrar
|
||||
import org.jetbrains.kotlin.fir.java.FirProjectSessionProvider
|
||||
import org.jetbrains.kotlin.fir.resolve.calls.ConeCallConflictResolverFactory
|
||||
import org.jetbrains.kotlin.fir.scopes.FirPlatformClassMapper
|
||||
import org.jetbrains.kotlin.fir.scopes.impl.FirEnumEntriesSupport
|
||||
import org.jetbrains.kotlin.fir.session.environment.AbstractProjectEnvironment
|
||||
import org.jetbrains.kotlin.fir.session.environment.AbstractProjectFileSearchScope
|
||||
import org.jetbrains.kotlin.incremental.components.EnumWhenTracker
|
||||
@@ -128,6 +127,5 @@ object FirSessionFactoryHelper {
|
||||
register(ConeCallConflictResolverFactory::class, DefaultCallConflictResolverFactory)
|
||||
register(FirPlatformClassMapper::class, FirPlatformClassMapper.Default)
|
||||
register(FirOverridesBackwardCompatibilityHelper::class, FirOverridesBackwardCompatibilityHelper.Default())
|
||||
register(FirEnumEntriesSupport::class, FirEnumEntriesSupport(this))
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user