[FIR] Cleanup: drop AMBIGUOUS_ACTUALS diagnostic from the frontend

Motivation: AMBIGUOUS_ACTUALS can't be reported on frontend (because it
requires expect to actual mapping, but the mapping is only available on
backend)

In scope of KT-59938
Review: https://jetbrains.team/p/kt/reviews/13760
This commit is contained in:
Nikita Bobko
2023-12-05 16:12:34 +01:00
committed by Space Team
parent f1ce57f08f
commit e6860054ea
7 changed files with 0 additions and 32 deletions
@@ -3779,16 +3779,6 @@ internal val KT_DIAGNOSTIC_CONVERTER = KtDiagnosticConverterBuilder.buildConvert
token,
)
}
add(FirErrors.AMBIGUOUS_ACTUALS) { firDiagnostic ->
AmbiguousActualsImpl(
firSymbolBuilder.buildSymbol(firDiagnostic.a),
firDiagnostic.b.map { firBasedSymbol ->
firSymbolBuilder.buildSymbol(firBasedSymbol)
},
firDiagnostic as KtPsiDiagnostic,
token,
)
}
add(FirErrors.AMBIGUOUS_EXPECTS) { firDiagnostic ->
AmbiguousExpectsImpl(
firSymbolBuilder.buildSymbol(firDiagnostic.a),
@@ -2642,12 +2642,6 @@ sealed interface KtFirDiagnostic<PSI : PsiElement> : KtDiagnosticWithPsi<PSI> {
val compatibility: Map<ExpectActualCompatibility<FirBasedSymbol<*>>, List<KtSymbol>>
}
interface AmbiguousActuals : KtFirDiagnostic<KtNamedDeclaration> {
override val diagnosticClass get() = AmbiguousActuals::class
val declaration: KtSymbol
val candidates: List<KtSymbol>
}
interface AmbiguousExpects : KtFirDiagnostic<KtNamedDeclaration> {
override val diagnosticClass get() = AmbiguousExpects::class
val declaration: KtSymbol
@@ -3183,13 +3183,6 @@ internal class ActualWithoutExpectImpl(
token: KtLifetimeToken,
) : KtAbstractFirDiagnostic<KtNamedDeclaration>(firDiagnostic, token), KtFirDiagnostic.ActualWithoutExpect
internal class AmbiguousActualsImpl(
override val declaration: KtSymbol,
override val candidates: List<KtSymbol>,
firDiagnostic: KtPsiDiagnostic,
token: KtLifetimeToken,
) : KtAbstractFirDiagnostic<KtNamedDeclaration>(firDiagnostic, token), KtFirDiagnostic.AmbiguousActuals
internal class AmbiguousExpectsImpl(
override val declaration: KtSymbol,
override val modules: List<FirModuleData>,
@@ -1285,11 +1285,6 @@ object DIAGNOSTICS_LIST : DiagnosticList("FirErrors") {
parameter<Map<out ExpectActualCompatibility<Symbol>, Collection<Symbol>>>("compatibility")
}
val AMBIGUOUS_ACTUALS by error<KtNamedDeclaration>(PositioningStrategy.INCOMPATIBLE_DECLARATION) {
parameter<Symbol>("declaration")
parameter<Collection<Symbol>>("candidates")
}
val AMBIGUOUS_EXPECTS by error<KtNamedDeclaration>(PositioningStrategy.INCOMPATIBLE_DECLARATION) {
parameter<Symbol>("declaration")
parameter<Collection<FirModuleData>>("modules")
@@ -677,7 +677,6 @@ object FirErrors {
val EXPECTED_FUNCTION_SOURCE_WITH_DEFAULT_ARGUMENTS_NOT_FOUND: KtDiagnosticFactory0 by error0<PsiElement>()
val NO_ACTUAL_FOR_EXPECT: KtDiagnosticFactory3<FirBasedSymbol<*>, FirModuleData, Map<ExpectActualCompatibility<FirBasedSymbol<*>>, Collection<FirBasedSymbol<*>>>> by error3<KtNamedDeclaration, FirBasedSymbol<*>, FirModuleData, Map<ExpectActualCompatibility<FirBasedSymbol<*>>, Collection<FirBasedSymbol<*>>>>(SourceElementPositioningStrategies.INCOMPATIBLE_DECLARATION)
val ACTUAL_WITHOUT_EXPECT: KtDiagnosticFactory2<FirBasedSymbol<*>, Map<out ExpectActualCompatibility<FirBasedSymbol<*>>, Collection<FirBasedSymbol<*>>>> by error2<KtNamedDeclaration, FirBasedSymbol<*>, Map<out ExpectActualCompatibility<FirBasedSymbol<*>>, Collection<FirBasedSymbol<*>>>>(SourceElementPositioningStrategies.DECLARATION_NAME_ONLY)
val AMBIGUOUS_ACTUALS: KtDiagnosticFactory2<FirBasedSymbol<*>, Collection<FirBasedSymbol<*>>> by error2<KtNamedDeclaration, FirBasedSymbol<*>, Collection<FirBasedSymbol<*>>>(SourceElementPositioningStrategies.INCOMPATIBLE_DECLARATION)
val AMBIGUOUS_EXPECTS: KtDiagnosticFactory2<FirBasedSymbol<*>, Collection<FirModuleData>> by error2<KtNamedDeclaration, FirBasedSymbol<*>, Collection<FirModuleData>>(SourceElementPositioningStrategies.INCOMPATIBLE_DECLARATION)
val NO_ACTUAL_CLASS_MEMBER_FOR_EXPECTED_CLASS: KtDiagnosticFactory2<FirBasedSymbol<*>, List<Pair<FirBasedSymbol<*>, Map<out MismatchOrIncompatible<FirBasedSymbol<*>>, Collection<FirBasedSymbol<*>>>>>> by error2<KtNamedDeclaration, FirBasedSymbol<*>, List<Pair<FirBasedSymbol<*>, Map<out MismatchOrIncompatible<FirBasedSymbol<*>>, Collection<FirBasedSymbol<*>>>>>>(SourceElementPositioningStrategies.ACTUAL_DECLARATION_NAME)
val ACTUAL_MISSING: KtDiagnosticFactory0 by error0<KtNamedDeclaration>(SourceElementPositioningStrategies.ACTUAL_DECLARATION_NAME)
@@ -462,7 +462,6 @@ val FIR_NON_SUPPRESSIBLE_ERROR_NAMES: Set<String> = setOf(
"EXPECTED_FUNCTION_SOURCE_WITH_DEFAULT_ARGUMENTS_NOT_FOUND",
"NO_ACTUAL_FOR_EXPECT",
"ACTUAL_WITHOUT_EXPECT",
"AMBIGUOUS_ACTUALS",
"AMBIGUOUS_EXPECTS",
"NO_ACTUAL_CLASS_MEMBER_FOR_EXPECTED_CLASS",
"ACTUAL_MISSING",
@@ -74,7 +74,6 @@ import org.jetbrains.kotlin.fir.analysis.diagnostics.FirErrors.ACTUAL_TYPE_ALIAS
import org.jetbrains.kotlin.fir.analysis.diagnostics.FirErrors.ACTUAL_TYPE_ALIAS_WITH_USE_SITE_VARIANCE
import org.jetbrains.kotlin.fir.analysis.diagnostics.FirErrors.ACTUAL_WITHOUT_EXPECT
import org.jetbrains.kotlin.fir.analysis.diagnostics.FirErrors.ADAPTED_CALLABLE_REFERENCE_AGAINST_REFLECTION_TYPE
import org.jetbrains.kotlin.fir.analysis.diagnostics.FirErrors.AMBIGUOUS_ACTUALS
import org.jetbrains.kotlin.fir.analysis.diagnostics.FirErrors.AMBIGUOUS_ALTERED_ASSIGN
import org.jetbrains.kotlin.fir.analysis.diagnostics.FirErrors.AMBIGUOUS_ANNOTATION_ARGUMENT
import org.jetbrains.kotlin.fir.analysis.diagnostics.FirErrors.AMBIGUOUS_ANONYMOUS_TYPE_INFERRED
@@ -2066,7 +2065,6 @@ object FirErrorsDefaultMessages : BaseDiagnosticRendererFactory() {
SYMBOL,
FirPlatformIncompatibilityDiagnosticRenderer.TEXT
)
map.put(AMBIGUOUS_ACTUALS, "''{0}'' has several compatible actual declarations in modules {1}.", SYMBOL, SYMBOLS)
map.put(AMBIGUOUS_EXPECTS, "''{0}'' has several compatible expect declarations in modules {1}.", SYMBOL, COLLECTION(MODULE_DATA))
map.put(
NO_ACTUAL_CLASS_MEMBER_FOR_EXPECTED_CLASS,