[FIR] Add TYPE_ARGUMENTS_FOR_OUTER_CLASS_WHEN_NESTED_REFERENCED diagnostics
Report TYPE_ARGUMENTS_FOR_OUTER_CLASS_WHEN_NESTED_REFERENCED instead of WRONG_NUMBER_OF_TYPE_ARGUMENTS where it's appropriate ^KT-59393 Fixed Simplify FirTypeResolverImpl
This commit is contained in:
committed by
Space Team
parent
8d27af5b0d
commit
319fb967ec
+6
@@ -2123,6 +2123,12 @@ internal val KT_DIAGNOSTIC_CONVERTER = KtDiagnosticConverterBuilder.buildConvert
|
||||
token,
|
||||
)
|
||||
}
|
||||
add(FirErrors.TYPE_ARGUMENTS_FOR_OUTER_CLASS_WHEN_NESTED_REFERENCED) { firDiagnostic ->
|
||||
TypeArgumentsForOuterClassWhenNestedReferencedImpl(
|
||||
firDiagnostic as KtPsiDiagnostic,
|
||||
token,
|
||||
)
|
||||
}
|
||||
add(FirErrors.WRONG_NUMBER_OF_TYPE_ARGUMENTS) { firDiagnostic ->
|
||||
WrongNumberOfTypeArgumentsImpl(
|
||||
firDiagnostic.a,
|
||||
|
||||
+4
@@ -1513,6 +1513,10 @@ sealed interface KtFirDiagnostic<PSI : PsiElement> : KtDiagnosticWithPsi<PSI> {
|
||||
override val diagnosticClass get() = TypeArgumentsNotAllowed::class
|
||||
}
|
||||
|
||||
interface TypeArgumentsForOuterClassWhenNestedReferenced : KtFirDiagnostic<PsiElement> {
|
||||
override val diagnosticClass get() = TypeArgumentsForOuterClassWhenNestedReferenced::class
|
||||
}
|
||||
|
||||
interface WrongNumberOfTypeArguments : KtFirDiagnostic<PsiElement> {
|
||||
override val diagnosticClass get() = WrongNumberOfTypeArguments::class
|
||||
val expectedCount: Int
|
||||
|
||||
+5
@@ -1816,6 +1816,11 @@ internal class TypeArgumentsNotAllowedImpl(
|
||||
token: KtLifetimeToken,
|
||||
) : KtAbstractFirDiagnostic<PsiElement>(firDiagnostic, token), KtFirDiagnostic.TypeArgumentsNotAllowed
|
||||
|
||||
internal class TypeArgumentsForOuterClassWhenNestedReferencedImpl(
|
||||
firDiagnostic: KtPsiDiagnostic,
|
||||
token: KtLifetimeToken,
|
||||
) : KtAbstractFirDiagnostic<PsiElement>(firDiagnostic, token), KtFirDiagnostic.TypeArgumentsForOuterClassWhenNestedReferenced
|
||||
|
||||
internal class WrongNumberOfTypeArgumentsImpl(
|
||||
override val expectedCount: Int,
|
||||
override val classifier: KtClassLikeSymbol,
|
||||
|
||||
Reference in New Issue
Block a user