diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/TargetPlatform.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/TargetPlatform.kt index 5e88fee21ac..5275531ef5b 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/TargetPlatform.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/TargetPlatform.kt @@ -19,6 +19,7 @@ package org.jetbrains.kotlin.resolve import org.jetbrains.kotlin.container.StorageComponentContainer import org.jetbrains.kotlin.container.composeContainer import org.jetbrains.kotlin.container.useInstance +import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.platform.PlatformToKotlinClassMap import org.jetbrains.kotlin.resolve.calls.checkers.* import org.jetbrains.kotlin.resolve.calls.results.TypeSpecificityComparator @@ -34,6 +35,7 @@ abstract class TargetPlatform(val platformName: String) { abstract val platformConfigurator: PlatformConfigurator abstract val defaultImports: List + open val excludedImports: List get() = emptyList() abstract val multiTargetPlatform: MultiTargetPlatform diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/DefaultImportProvider.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/DefaultImportProvider.kt index 0e4d2d945c1..9d53183d612 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/DefaultImportProvider.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/DefaultImportProvider.kt @@ -63,6 +63,6 @@ class DefaultImportProvider( .mapNotNull { it.expandedType.constructor.declarationDescriptor?.fqNameSafe } .filter { nonKotlinDefaultImportedPackages.any(it::isChildOf) } - nonKotlinAliasedTypeFqNames + nonKotlinAliasedTypeFqNames + targetPlatform.excludedImports } } diff --git a/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/JsPlatform.kt b/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/JsPlatform.kt index 00b9215424a..41a52560949 100644 --- a/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/JsPlatform.kt +++ b/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/JsPlatform.kt @@ -18,6 +18,7 @@ package org.jetbrains.kotlin.js.resolve import org.jetbrains.kotlin.builtins.DefaultBuiltIns import org.jetbrains.kotlin.builtins.KotlinBuiltIns +import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.resolve.ImportPath import org.jetbrains.kotlin.resolve.MultiTargetPlatform import org.jetbrains.kotlin.resolve.PlatformConfigurator @@ -32,4 +33,6 @@ object JsPlatform : TargetPlatform("JS") { get() = DefaultBuiltIns.Instance override val multiTargetPlatform = MultiTargetPlatform.Specific(platformName) + + override val excludedImports: List = listOf("Promise", "Date", "Console", "Math", "RegExp", "RegExpMatch", "Json", "json").map { FqName("kotlin.js.$it") } }