[FIR] UPPER_BOUND_CANNOT_BE_ARRAY diagnostic

This commit is contained in:
Andrey Zinovyev
2021-08-18 16:00:24 +03:00
committed by TeamCityServer
parent 4661656b8c
commit 24fbe0f072
9 changed files with 56 additions and 19 deletions
@@ -3447,6 +3447,12 @@ internal val KT_DIAGNOSTIC_CONVERTER = KtDiagnosticConverterBuilder.buildConvert
token,
)
}
add(FirJvmErrors.UPPER_BOUND_CANNOT_BE_ARRAY) { firDiagnostic ->
UpperBoundCannotBeArrayImpl(
firDiagnostic as FirPsiDiagnostic,
token,
)
}
add(FirJvmErrors.STRICTFP_ON_CLASS) { firDiagnostic ->
StrictfpOnClassImpl(
firDiagnostic as FirPsiDiagnostic,
@@ -2404,6 +2404,10 @@ sealed class KtFirDiagnostic<PSI : PsiElement> : KtDiagnosticWithPsi<PSI> {
abstract val actualType: KtType
}
abstract class UpperBoundCannotBeArray : KtFirDiagnostic<PsiElement>() {
override val diagnosticClass get() = UpperBoundCannotBeArray::class
}
abstract class StrictfpOnClass : KtFirDiagnostic<KtAnnotationEntry>() {
override val diagnosticClass get() = StrictfpOnClass::class
}
@@ -3887,6 +3887,13 @@ internal class JavaTypeMismatchImpl(
override val firDiagnostic: FirPsiDiagnostic by weakRef(firDiagnostic)
}
internal class UpperBoundCannotBeArrayImpl(
firDiagnostic: FirPsiDiagnostic,
override val token: ValidityToken,
) : KtFirDiagnostic.UpperBoundCannotBeArray(), KtAbstractFirDiagnostic<PsiElement> {
override val firDiagnostic: FirPsiDiagnostic by weakRef(firDiagnostic)
}
internal class StrictfpOnClassImpl(
firDiagnostic: FirPsiDiagnostic,
override val token: ValidityToken,