diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/LazyTopDownAnalyzer.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/LazyTopDownAnalyzer.kt index a75d5f29805..7b514919306 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/LazyTopDownAnalyzer.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/LazyTopDownAnalyzer.kt @@ -100,7 +100,7 @@ class LazyTopDownAnalyzer( assert(file.isScript() || packageDirective != null) { "No package in a non-script file: " + file } packageDirective?.accept(this) c.addFile(file) - topLevelFqNames.put(file.packageFqName, packageDirective) + if (packageDirective != null) topLevelFqNames.put(file.packageFqName, packageDirective) } override fun visitPackageDirective(directive: KtPackageDirective) { diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/CandidateResolver.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/CandidateResolver.kt index 52e567ed247..2880edf5c9d 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/CandidateResolver.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/CandidateResolver.kt @@ -389,7 +389,7 @@ class CandidateResolver( } } } - argumentTypes.add(resultingType) + if (resultingType != null) argumentTypes.add(resultingType) candidateCall.recordArgumentMatchStatus(argument, matchStatus) } } diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/declarations/AbstractPsiBasedDeclarationProvider.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/declarations/AbstractPsiBasedDeclarationProvider.kt index 70a17de9e55..8722867c52d 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/declarations/AbstractPsiBasedDeclarationProvider.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/declarations/AbstractPsiBasedDeclarationProvider.kt @@ -54,7 +54,7 @@ abstract class AbstractPsiBasedDeclarationProvider(storageManager: StorageManage is KtClassOrObject -> classesAndObjects.put(declaration.nameAsName.safeNameForLazyResolve(), KtClassInfoUtil.createClassOrObjectInfo(declaration)) is KtScript -> - scripts.put(KtScriptInfo(declaration).script.nameAsName, KtScriptInfo(declaration)) + scripts.put(KtScriptInfo(declaration).script.nameAsName!!, KtScriptInfo(declaration)) is KtDestructuringDeclaration -> { for (entry in declaration.entries) { val name = entry.nameAsName.safeNameForLazyResolve()