[FIR] Fix flattening of substitution overrides of intersection overrides for subsumed check

#KT-65555 Fixed
This commit is contained in:
Kirill Rakhman
2024-02-14 11:49:36 +01:00
committed by Space Team
parent 3994e3f63a
commit 879cdd5952
7 changed files with 39 additions and 1 deletions
@@ -171,7 +171,7 @@ fun FirCallableSymbol<*>.dispatchReceiverScope(session: FirSession, scopeSession
}
fun MemberWithBaseScope<FirCallableSymbol<*>>.flattenIntersectionsRecursively(): List<MemberWithBaseScope<FirCallableSymbol<*>>> {
if (member.origin != FirDeclarationOrigin.IntersectionOverride) return listOf(this)
if (member.unwrapSubstitutionOverrides<FirCallableSymbol<*>>().origin != FirDeclarationOrigin.IntersectionOverride) return listOf(this)
return baseScope.getDirectOverriddenMembersWithBaseScope(member).flatMap { it.flattenIntersectionsRecursively() }
}