[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
@@ -27,7 +27,11 @@ sealed class FirDeclarationOrigin(
object SamConstructor : FirDeclarationOrigin()
object Enhancement : FirDeclarationOrigin()
object ImportedFromObjectOrStatic : FirDeclarationOrigin()
object SubstitutionOverride : FirDeclarationOrigin(fromSupertypes = true)
sealed class SubstitutionOverride(displayName: String) : FirDeclarationOrigin(displayName, fromSupertypes = true) {
object DeclarationSite : SubstitutionOverride("SubstitutionOverride(DeclarationSite)")
object CallSite : SubstitutionOverride("SubstitutionOverride(CallSite)")
}
object IntersectionOverride : FirDeclarationOrigin(fromSupertypes = true)
object Delegated : FirDeclarationOrigin()
object RenamedForOverride : FirDeclarationOrigin()
@@ -91,7 +91,7 @@ val FirProperty.hasBackingField: Boolean
if (symbol is FirSyntheticPropertySymbol) return false
if (isStatic) return false // For Enum.entries
when (origin) {
FirDeclarationOrigin.SubstitutionOverride -> return false
is FirDeclarationOrigin.SubstitutionOverride -> return false
FirDeclarationOrigin.IntersectionOverride -> return false
FirDeclarationOrigin.Delegated -> return false
else -> {