[FIR] Fix error message for CONFLICTING_INHERITED_MEMBERS
This commit is contained in:
+2
-1
@@ -2091,7 +2091,8 @@ internal val KT_DIAGNOSTIC_CONVERTER = KtDiagnosticConverterBuilder.buildConvert
|
||||
}
|
||||
add(FirErrors.CONFLICTING_INHERITED_MEMBERS) { firDiagnostic ->
|
||||
ConflictingInheritedMembersImpl(
|
||||
firDiagnostic.a.map { firCallableSymbol ->
|
||||
firSymbolBuilder.classifierBuilder.buildClassLikeSymbol(firDiagnostic.a),
|
||||
firDiagnostic.b.map { firCallableSymbol ->
|
||||
firSymbolBuilder.callableBuilder.buildCallableSymbol(firCallableSymbol)
|
||||
},
|
||||
firDiagnostic as KtPsiDiagnostic,
|
||||
|
||||
+1
@@ -1492,6 +1492,7 @@ sealed class KtFirDiagnostic<PSI : PsiElement> : KtDiagnosticWithPsi<PSI> {
|
||||
|
||||
abstract class ConflictingInheritedMembers : KtFirDiagnostic<KtClassOrObject>() {
|
||||
override val diagnosticClass get() = ConflictingInheritedMembers::class
|
||||
abstract val owner: KtClassLikeSymbol
|
||||
abstract val conflictingDeclarations: List<KtCallableSymbol>
|
||||
}
|
||||
|
||||
|
||||
+1
@@ -1788,6 +1788,7 @@ internal class VarOverriddenByValByDelegationImpl(
|
||||
) : KtFirDiagnostic.VarOverriddenByValByDelegation(), KtAbstractFirDiagnostic<KtClassOrObject>
|
||||
|
||||
internal class ConflictingInheritedMembersImpl(
|
||||
override val owner: KtClassLikeSymbol,
|
||||
override val conflictingDeclarations: List<KtCallableSymbol>,
|
||||
override val firDiagnostic: KtPsiDiagnostic,
|
||||
override val token: ValidityToken,
|
||||
|
||||
+1
@@ -751,6 +751,7 @@ object DIAGNOSTICS_LIST : DiagnosticList("FirErrors") {
|
||||
}
|
||||
|
||||
val CONFLICTING_INHERITED_MEMBERS by error<KtClassOrObject>(PositioningStrategy.DECLARATION_NAME) {
|
||||
parameter<FirClassSymbol<*>>("owner")
|
||||
parameter<List<FirCallableSymbol<*>>>("conflictingDeclarations")
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -428,7 +428,7 @@ object FirErrors {
|
||||
val RETURN_TYPE_MISMATCH_BY_DELEGATION by error2<KtClassOrObject, FirCallableSymbol<*>, FirCallableSymbol<*>>(SourceElementPositioningStrategies.DECLARATION_NAME)
|
||||
val PROPERTY_TYPE_MISMATCH_BY_DELEGATION by error2<KtClassOrObject, FirCallableSymbol<*>, FirCallableSymbol<*>>(SourceElementPositioningStrategies.DECLARATION_NAME)
|
||||
val VAR_OVERRIDDEN_BY_VAL_BY_DELEGATION by error2<KtClassOrObject, FirCallableSymbol<*>, FirCallableSymbol<*>>(SourceElementPositioningStrategies.DECLARATION_NAME)
|
||||
val CONFLICTING_INHERITED_MEMBERS by error1<KtClassOrObject, List<FirCallableSymbol<*>>>(SourceElementPositioningStrategies.DECLARATION_NAME)
|
||||
val CONFLICTING_INHERITED_MEMBERS by error2<KtClassOrObject, FirClassSymbol<*>, List<FirCallableSymbol<*>>>(SourceElementPositioningStrategies.DECLARATION_NAME)
|
||||
val ABSTRACT_MEMBER_NOT_IMPLEMENTED by error2<KtClassOrObject, FirClassSymbol<*>, FirCallableSymbol<*>>(SourceElementPositioningStrategies.DECLARATION_NAME)
|
||||
val ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED by error2<KtClassOrObject, FirClassSymbol<*>, FirCallableSymbol<*>>(SourceElementPositioningStrategies.DECLARATION_NAME)
|
||||
val INVISIBLE_ABSTRACT_MEMBER_FROM_SUPER by deprecationError2<KtClassOrObject, FirClassSymbol<*>, FirCallableSymbol<*>>(ProhibitInvisibleAbstractMethodsInSuperclasses, SourceElementPositioningStrategies.DECLARATION_NAME)
|
||||
|
||||
+1
-1
@@ -218,7 +218,7 @@ object FirImplementationMismatchChecker : FirClassChecker() {
|
||||
}
|
||||
|
||||
clashes.forEach {
|
||||
reporter.reportOn(containingClass.source, FirErrors.CONFLICTING_INHERITED_MEMBERS, it.toList(), context)
|
||||
reporter.reportOn(containingClass.source, FirErrors.CONFLICTING_INHERITED_MEMBERS, containingClass.symbol, it.toList(), context)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+1
@@ -1353,6 +1353,7 @@ object FirErrorsDefaultMessages : BaseDiagnosticRendererFactory() {
|
||||
map.put(
|
||||
CONFLICTING_INHERITED_MEMBERS,
|
||||
"{0} inherits conflicting members: {1}",
|
||||
DECLARATION_NAME,
|
||||
commaSeparated(DECLARATION_NAME)
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user