[FIR] Only add non-subsumed to overridden of intersection override
If an intersection override overrides members A.x, B.x and C.x and B <: A, then A.x is subsumed by B.x, and we don't add it to the list of overridden members. This fixes a false-positive MANY_IMPL_MEMBER_NOT_ IMPLEMENTED where an implementation is subsumed by an abstract override. ^KT-57092 Fixed
This commit is contained in:
committed by
Space Team
parent
6afb1b7363
commit
83845fbab5
@@ -111,6 +111,8 @@ inline fun <reified D : FirCallableDeclaration> D.unwrapSubstitutionOverrides():
|
||||
|
||||
inline fun <reified S : FirCallableSymbol<*>> S.unwrapFakeOverrides(): S = fir.unwrapFakeOverrides().symbol as S
|
||||
|
||||
inline fun <reified S : FirCallableSymbol<*>> S.unwrapSubstitutionOverrides(): S = fir.unwrapSubstitutionOverrides().symbol as S
|
||||
|
||||
private object SubstitutedOverrideOriginalKey : FirDeclarationDataKey()
|
||||
|
||||
var <D : FirCallableDeclaration>
|
||||
|
||||
Reference in New Issue
Block a user