From 8bb5488a266323eb82b6ee6516d68e517b40d36d Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Tue, 4 Aug 2020 14:25:21 +0300 Subject: [PATCH] [FIR] look at intersectionOverride during override processing This commit fixes some BB tests broken by previous commit --- .../kotlin/fir/scopes/impl/FirTypeIntersectionScope.kt | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/scopes/impl/FirTypeIntersectionScope.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/scopes/impl/FirTypeIntersectionScope.kt index 8af81d6f879..2c8ac8770a3 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/scopes/impl/FirTypeIntersectionScope.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/scopes/impl/FirTypeIntersectionScope.kt @@ -295,8 +295,13 @@ class FirTypeIntersectionScope private constructor( } @Suppress("UNCHECKED_CAST") - private fun > getDirectOverriddenSymbols(symbol: S): Collection = - overriddenSymbols[symbol].orEmpty() as Collection + private fun > getDirectOverriddenSymbols(symbol: S): Collection { + val intersectionOverride = intersectionOverrides[symbol] + val allDirectOverridden = overriddenSymbols[symbol].orEmpty() + intersectionOverride?.let { + overriddenSymbols[it] + }.orEmpty() + return allDirectOverridden as Collection + } override fun processOverriddenFunctionsWithDepth( functionSymbol: FirFunctionSymbol<*>,