From 3a1e33c27b9d9f6769569bc473bcabe11d0de99e Mon Sep 17 00:00:00 2001 From: Dmitriy Dolovov Date: Thu, 26 Mar 2020 19:51:48 +0700 Subject: [PATCH] Remove declarations already contained in kotlin-compiler.jar --- .../kotlin/builtins/konan/KonanBuiltIns.kt | 19 ------------ .../konan/KonanModuleDescriptorUtils.kt | 4 +-- .../kotlin/konan/utils/KonanFactories.kt | 4 +-- .../platform/KonanPlatformConfigurator.kt | 29 ------------------- .../NativePlatformAnalyzerServices.kt | 25 ---------------- .../org/jetbrains/kotlin/cli/klib/main.kt | 4 +-- .../konan/library/SearchPathResolver.kt | 2 -- 7 files changed, 5 insertions(+), 82 deletions(-) delete mode 100644 extracted/konan.serializer/src/org/jetbrains/kotlin/builtins/konan/KonanBuiltIns.kt delete mode 100644 extracted/konan.serializer/src/org/jetbrains/kotlin/resolve/konan/platform/KonanPlatformConfigurator.kt delete mode 100644 extracted/konan.serializer/src/org/jetbrains/kotlin/resolve/konan/platform/NativePlatformAnalyzerServices.kt diff --git a/extracted/konan.serializer/src/org/jetbrains/kotlin/builtins/konan/KonanBuiltIns.kt b/extracted/konan.serializer/src/org/jetbrains/kotlin/builtins/konan/KonanBuiltIns.kt deleted file mode 100644 index e5e22362985..00000000000 --- a/extracted/konan.serializer/src/org/jetbrains/kotlin/builtins/konan/KonanBuiltIns.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.jetbrains.kotlin.builtins.konan - -import org.jetbrains.kotlin.builtins.KotlinBuiltIns -import org.jetbrains.kotlin.descriptors.findClassAcrossModuleDependencies -import org.jetbrains.kotlin.name.ClassId -import org.jetbrains.kotlin.name.Name -import org.jetbrains.kotlin.resolve.DescriptorUtils.COROUTINES_PACKAGE_FQ_NAME_RELEASE -import org.jetbrains.kotlin.storage.StorageManager - -class KonanBuiltIns(storageManager: StorageManager) : KotlinBuiltIns(storageManager) { - - override fun getSuspendFunction(parameterCount: Int) = - builtInsModule.findClassAcrossModuleDependencies( - ClassId( - COROUTINES_PACKAGE_FQ_NAME_RELEASE, - Name.identifier("SuspendFunction$parameterCount") - ) - )!! -} diff --git a/extracted/konan.serializer/src/org/jetbrains/kotlin/descriptors/konan/KonanModuleDescriptorUtils.kt b/extracted/konan.serializer/src/org/jetbrains/kotlin/descriptors/konan/KonanModuleDescriptorUtils.kt index ab6d8b24335..4092dd4efe9 100644 --- a/extracted/konan.serializer/src/org/jetbrains/kotlin/descriptors/konan/KonanModuleDescriptorUtils.kt +++ b/extracted/konan.serializer/src/org/jetbrains/kotlin/descriptors/konan/KonanModuleDescriptorUtils.kt @@ -4,7 +4,7 @@ import org.jetbrains.kotlin.descriptors.ModuleDescriptor import org.jetbrains.kotlin.konan.library.KONAN_STDLIB_NAME import org.jetbrains.kotlin.name.Name -//TODO: this is should be reverted!!! -private val STDLIB_MODULE_NAME = Name.special("") +private val STDLIB_MODULE_NAME = Name.special("<$KONAN_STDLIB_NAME>") +// TODO: consider using ModuleDescriptorImpl.isStdlibModule instead fun ModuleDescriptor.isKonanStdlib() = name == STDLIB_MODULE_NAME diff --git a/extracted/konan.serializer/src/org/jetbrains/kotlin/konan/utils/KonanFactories.kt b/extracted/konan.serializer/src/org/jetbrains/kotlin/konan/utils/KonanFactories.kt index 8168e0430c4..6800e71a31a 100644 --- a/extracted/konan.serializer/src/org/jetbrains/kotlin/konan/utils/KonanFactories.kt +++ b/extracted/konan.serializer/src/org/jetbrains/kotlin/konan/utils/KonanFactories.kt @@ -4,10 +4,8 @@ import org.jetbrains.kotlin.builtins.konan.KonanBuiltIns import org.jetbrains.kotlin.konan.util.KlibMetadataFactories import org.jetbrains.kotlin.library.metadata.NativeTypeTransformer import org.jetbrains.kotlin.library.metadata.NullFlexibleTypeDeserializer -import org.jetbrains.kotlin.storage.StorageManager -fun createKonanBuiltIns(storageManager: StorageManager) = KonanBuiltIns(storageManager) /** * The default Kotlin/Native factories. */ -object KonanFactories : KlibMetadataFactories(::createKonanBuiltIns, NullFlexibleTypeDeserializer, NativeTypeTransformer()) \ No newline at end of file +object KonanFactories : KlibMetadataFactories({ KonanBuiltIns(it) }, NullFlexibleTypeDeserializer, NativeTypeTransformer()) \ No newline at end of file diff --git a/extracted/konan.serializer/src/org/jetbrains/kotlin/resolve/konan/platform/KonanPlatformConfigurator.kt b/extracted/konan.serializer/src/org/jetbrains/kotlin/resolve/konan/platform/KonanPlatformConfigurator.kt deleted file mode 100644 index b2e8af0daab..00000000000 --- a/extracted/konan.serializer/src/org/jetbrains/kotlin/resolve/konan/platform/KonanPlatformConfigurator.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.jetbrains.kotlin.resolve.konan.platform - -import org.jetbrains.kotlin.container.StorageComponentContainer -import org.jetbrains.kotlin.container.useInstance -import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor -import org.jetbrains.kotlin.psi.KtCallableDeclaration -import org.jetbrains.kotlin.resolve.BindingContext -import org.jetbrains.kotlin.resolve.ModuleStructureOracle -import org.jetbrains.kotlin.resolve.PlatformConfiguratorBase -import org.jetbrains.kotlin.resolve.checkers.ExpectedActualDeclarationChecker -import org.jetbrains.kotlin.resolve.inline.ReasonableInlineRule -import org.jetbrains.kotlin.resolve.jvm.checkers.SuperCallWithDefaultArgumentsChecker - -object KonanPlatformConfigurator : PlatformConfiguratorBase( - additionalDeclarationCheckers = listOf(ExpectedActualDeclarationChecker(ModuleStructureOracle.SingleModule, emptyList())), - additionalCallCheckers = listOf(SuperCallWithDefaultArgumentsChecker()) -) { - override fun configureModuleComponents(container: StorageComponentContainer) { - container.useInstance(NativeInliningRule) - } -} - -object NativeInliningRule : ReasonableInlineRule { - override fun isInlineReasonable( - descriptor: CallableMemberDescriptor, - declaration: KtCallableDeclaration, - context: BindingContext - ): Boolean = true -} \ No newline at end of file diff --git a/extracted/konan.serializer/src/org/jetbrains/kotlin/resolve/konan/platform/NativePlatformAnalyzerServices.kt b/extracted/konan.serializer/src/org/jetbrains/kotlin/resolve/konan/platform/NativePlatformAnalyzerServices.kt deleted file mode 100644 index 7387a934e46..00000000000 --- a/extracted/konan.serializer/src/org/jetbrains/kotlin/resolve/konan/platform/NativePlatformAnalyzerServices.kt +++ /dev/null @@ -1,25 +0,0 @@ -/* - * Copyright 2010-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license - * that can be found in the license/LICENSE.txt file. - */ - -package org.jetbrains.kotlin.resolve.konan.platform - -import org.jetbrains.kotlin.name.FqName -import org.jetbrains.kotlin.resolve.ImportPath -import org.jetbrains.kotlin.resolve.PlatformConfigurator -import org.jetbrains.kotlin.resolve.PlatformDependentAnalyzerServices -import org.jetbrains.kotlin.storage.StorageManager - -object NativePlatformAnalyzerServices : PlatformDependentAnalyzerServices() { - override fun computePlatformSpecificDefaultImports(storageManager: StorageManager, result: MutableList) { - result.add(ImportPath.fromString("kotlin.native.*")) - } - - override val platformConfigurator: PlatformConfigurator = KonanPlatformConfigurator - - override val excludedImports: List = - listOf("identityHashCode").map { - FqName("kotlin.native.$it") - } -} diff --git a/klib/src/main/kotlin/org/jetbrains/kotlin/cli/klib/main.kt b/klib/src/main/kotlin/org/jetbrains/kotlin/cli/klib/main.kt index 5d57684c1cd..abb62385097 100644 --- a/klib/src/main/kotlin/org/jetbrains/kotlin/cli/klib/main.kt +++ b/klib/src/main/kotlin/org/jetbrains/kotlin/cli/klib/main.kt @@ -18,8 +18,8 @@ import org.jetbrains.kotlin.konan.target.PlatformManager import org.jetbrains.kotlin.konan.util.DependencyProcessor import org.jetbrains.kotlin.library.unpackZippedKonanLibraryTo import org.jetbrains.kotlin.konan.util.KlibMetadataFactories -import org.jetbrains.kotlin.konan.utils.createKonanBuiltIns import org.jetbrains.kotlin.backend.common.serialization.metadata.DynamicTypeDeserializer +import org.jetbrains.kotlin.builtins.konan.KonanBuiltIns import org.jetbrains.kotlin.descriptors.deserialization.PlatformDependentTypeTransformer import org.jetbrains.kotlin.util.Logger import org.jetbrains.kotlin.library.metadata.KlibMetadataProtoBuf @@ -30,7 +30,7 @@ import org.jetbrains.kotlin.storage.LockBasedStorageManager import java.lang.System.out import kotlin.system.exitProcess -object KlibFactories : KlibMetadataFactories(::createKonanBuiltIns, DynamicTypeDeserializer, PlatformDependentTypeTransformer.None) +object KlibFactories : KlibMetadataFactories(::KonanBuiltIns, DynamicTypeDeserializer, PlatformDependentTypeTransformer.None) fun printUsage() { println("Usage: klib ") diff --git a/shared/src/library/kotlin/org/jetbrains/kotlin/konan/library/SearchPathResolver.kt b/shared/src/library/kotlin/org/jetbrains/kotlin/konan/library/SearchPathResolver.kt index 4f3668270c1..c642ac17b75 100644 --- a/shared/src/library/kotlin/org/jetbrains/kotlin/konan/library/SearchPathResolver.kt +++ b/shared/src/library/kotlin/org/jetbrains/kotlin/konan/library/SearchPathResolver.kt @@ -11,8 +11,6 @@ import org.jetbrains.kotlin.library.impl.createKotlinLibrary import org.jetbrains.kotlin.util.DummyLogger import org.jetbrains.kotlin.util.Logger -const val KONAN_STDLIB_NAME = "stdlib" - interface SearchPathResolverWithTarget: SearchPathResolverWithAttributes { val target: KonanTarget }