From 284533f72bc6c210553b66735bbbdb4789ce1265 Mon Sep 17 00:00:00 2001 From: Georgy Bronnikov Date: Wed, 15 Apr 2020 16:08:35 +0300 Subject: [PATCH] IR: put resolution of unbound type parameter symbols behind a language version flag --- .../ir/util/ExternalDependenciesGenerator.kt | 30 ++++++++++--------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/ExternalDependenciesGenerator.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/ExternalDependenciesGenerator.kt index 26c792db6a539..ab50739877cdf 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/ExternalDependenciesGenerator.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/ExternalDependenciesGenerator.kt @@ -53,21 +53,23 @@ class ExternalDependenciesGenerator( } } while (unbound.isNotEmpty()) } -} -private val SymbolTable.allUnbound: List - get() { - val r = mutableListOf() - r.addAll(unboundClasses) - r.addAll(unboundConstructors) - r.addAll(unboundEnumEntries) - r.addAll(unboundFields) - r.addAll(unboundSimpleFunctions) - r.addAll(unboundProperties) - r.addAll(unboundTypeAliases) - r.addAll(unboundTypeParameters) - return r - } + private val SymbolTable.allUnbound: List + get() { + val r = mutableListOf() + r.addAll(unboundClasses) + r.addAll(unboundConstructors) + r.addAll(unboundEnumEntries) + r.addAll(unboundFields) + r.addAll(unboundSimpleFunctions) + r.addAll(unboundProperties) + r.addAll(unboundTypeAliases) + if (!languageVersionSettings.supportsFeature(LanguageFeature.NewInference)) { + r.addAll(unboundTypeParameters) + } + return r + } +} fun List.getDeclaration(symbol: IrSymbol): IrDeclaration = firstNotNullResult { provider ->