diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/QualifiedExpressionResolver.java b/compiler/frontend/src/org/jetbrains/kotlin/resolve/QualifiedExpressionResolver.java index b217661110b..1d52ae99957 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/QualifiedExpressionResolver.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/QualifiedExpressionResolver.java @@ -125,7 +125,7 @@ public class QualifiedExpressionResolver { else { Name aliasName = JetPsiUtil.getAliasName(importDirective); if (aliasName == null) return JetScope.Empty.INSTANCE$; - return new SingleAliasScope(aliasName, descriptors); + return new SingleImportScope(aliasName, descriptors); } } diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/SingleAliasScope.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/SingleImportScope.kt similarity index 91% rename from compiler/frontend/src/org/jetbrains/kotlin/resolve/SingleAliasScope.kt rename to compiler/frontend/src/org/jetbrains/kotlin/resolve/SingleImportScope.kt index 75e2ad969aa..9f918a70b6e 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/SingleAliasScope.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/SingleImportScope.kt @@ -22,7 +22,7 @@ import org.jetbrains.kotlin.resolve.scopes.DescriptorKindFilter import org.jetbrains.kotlin.resolve.scopes.JetScope import org.jetbrains.kotlin.utils.Printer -class SingleAliasScope(private val aliasName: Name, private val descriptors: Collection) : JetScope { +class SingleImportScope(private val aliasName: Name, private val descriptors: Collection) : JetScope { override fun getClassifier(name: Name) = if (name == aliasName) descriptors.filterIsInstance().singleOrNull() else null @@ -48,6 +48,6 @@ class SingleAliasScope(private val aliasName: Name, private val descriptors: Col override fun getOwnDeclaredDescriptors(): Collection = emptyList() override fun printScopeStructure(p: Printer) { - p.println(javaClass.getSimpleName()) + p.println(javaClass.getSimpleName(), ": ", aliasName) } } \ No newline at end of file diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/LazyImportScope.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/LazyImportScope.kt index 9247bb3c081..47c8afd1d10 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/LazyImportScope.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/LazyImportScope.kt @@ -99,23 +99,22 @@ class LazyImportResolver( else { directiveUnderResolve = directive - val directiveImportScope: JetScope - val descriptors: Collection try { val resolver = resolveSession.getQualifiedExpressionResolver() - directiveImportScope = resolver.processImportReference( + val directiveImportScope = resolver.processImportReference( directive, rootScope, packageView.getMemberScope(), traceForImportResolve, mode) - descriptors = if (directive.isAllUnder()) emptyList() else directiveImportScope.getAllDescriptors() + val descriptors = if (directive.isAllUnder()) emptyList() else directiveImportScope.getAllDescriptors() + if (mode == LookupMode.EVERYTHING) { PlatformTypesMappedToKotlinChecker.checkPlatformTypesMappedToKotlin(packageView.getModule(), traceForImportResolve, directive, descriptors) } + + importResolveStatus = ImportResolveStatus(mode, directiveImportScope, descriptors) + directiveImportScope } finally { directiveUnderResolve = null } - - importResolveStatus = ImportResolveStatus(mode, directiveImportScope, descriptors) - directiveImportScope } } }