[FIR] Split origin SubstitutionOverride into declaration and call-site

This commit is contained in:
Kirill Rakhman
2023-06-07 16:12:14 +02:00
committed by Space Team
parent 67fc46a190
commit bcdd85758e
12 changed files with 70 additions and 40 deletions
@@ -24,7 +24,7 @@ internal class JavaClassDeclaredMembersEnhancementScope(
) : FirContainingNamesAwareScope() {
private fun FirCallableDeclaration.isDeclared(): Boolean {
return (this.dispatchReceiverType as? ConeLookupTagBasedType)?.lookupTag == owner.symbol.toLookupTag()
&& this.origin != FirDeclarationOrigin.SubstitutionOverride
&& this.origin !is FirDeclarationOrigin.SubstitutionOverride
&& this.origin != FirDeclarationOrigin.IntersectionOverride
}
@@ -100,7 +100,7 @@ internal tailrec fun FirDeclaration.ktSymbolOrigin(): KtSymbolOrigin = when (ori
is FirDeclarationOrigin.Plugin -> KtSymbolOrigin.PLUGIN
FirDeclarationOrigin.RenamedForOverride -> KtSymbolOrigin.JAVA
FirDeclarationOrigin.SubstitutionOverride -> KtSymbolOrigin.SUBSTITUTION_OVERRIDE
is FirDeclarationOrigin.SubstitutionOverride -> KtSymbolOrigin.SUBSTITUTION_OVERRIDE
FirDeclarationOrigin.DynamicScope -> buildErrorWithAttachment("Invalid FirDeclarationOrigin ${origin::class.simpleName}") {
withFirEntry("firToGetOrigin", this@ktSymbolOrigin)
}