FIR: support JVM_DEFAULT_WITH_COMPATIBILITY_* diagnostics (FE 1.0 sync)
This commit is contained in:
committed by
TeamCityServer
parent
178290eac3
commit
533e802c8d
+12
@@ -4110,6 +4110,18 @@ internal val KT_DIAGNOSTIC_CONVERTER = KtDiagnosticConverterBuilder.buildConvert
|
||||
token,
|
||||
)
|
||||
}
|
||||
add(FirJvmErrors.JVM_DEFAULT_WITH_COMPATIBILITY_IN_DECLARATION) { firDiagnostic ->
|
||||
JvmDefaultWithCompatibilityInDeclarationImpl(
|
||||
firDiagnostic as KtPsiDiagnostic,
|
||||
token,
|
||||
)
|
||||
}
|
||||
add(FirJvmErrors.JVM_DEFAULT_WITH_COMPATIBILITY_NOT_ON_INTERFACE) { firDiagnostic ->
|
||||
JvmDefaultWithCompatibilityNotOnInterfaceImpl(
|
||||
firDiagnostic as KtPsiDiagnostic,
|
||||
token,
|
||||
)
|
||||
}
|
||||
add(FirJvmErrors.USAGE_OF_JVM_DEFAULT_THROUGH_SUPER_CALL) { firDiagnostic ->
|
||||
UsageOfJvmDefaultThroughSuperCallImpl(
|
||||
firDiagnostic as KtPsiDiagnostic,
|
||||
|
||||
+8
@@ -2859,6 +2859,14 @@ sealed class KtFirDiagnostic<PSI : PsiElement> : KtDiagnosticWithPsi<PSI> {
|
||||
abstract val annotation: String
|
||||
}
|
||||
|
||||
abstract class JvmDefaultWithCompatibilityInDeclaration : KtFirDiagnostic<KtElement>() {
|
||||
override val diagnosticClass get() = JvmDefaultWithCompatibilityInDeclaration::class
|
||||
}
|
||||
|
||||
abstract class JvmDefaultWithCompatibilityNotOnInterface : KtFirDiagnostic<KtElement>() {
|
||||
override val diagnosticClass get() = JvmDefaultWithCompatibilityNotOnInterface::class
|
||||
}
|
||||
|
||||
abstract class UsageOfJvmDefaultThroughSuperCall : KtFirDiagnostic<PsiElement>() {
|
||||
override val diagnosticClass get() = UsageOfJvmDefaultThroughSuperCall::class
|
||||
}
|
||||
|
||||
+10
@@ -3456,6 +3456,16 @@ internal class JvmDefaultInDeclarationImpl(
|
||||
override val token: ValidityToken,
|
||||
) : KtFirDiagnostic.JvmDefaultInDeclaration(), KtAbstractFirDiagnostic<KtElement>
|
||||
|
||||
internal class JvmDefaultWithCompatibilityInDeclarationImpl(
|
||||
override val firDiagnostic: KtPsiDiagnostic,
|
||||
override val token: ValidityToken,
|
||||
) : KtFirDiagnostic.JvmDefaultWithCompatibilityInDeclaration(), KtAbstractFirDiagnostic<KtElement>
|
||||
|
||||
internal class JvmDefaultWithCompatibilityNotOnInterfaceImpl(
|
||||
override val firDiagnostic: KtPsiDiagnostic,
|
||||
override val token: ValidityToken,
|
||||
) : KtFirDiagnostic.JvmDefaultWithCompatibilityNotOnInterface(), KtAbstractFirDiagnostic<KtElement>
|
||||
|
||||
internal class UsageOfJvmDefaultThroughSuperCallImpl(
|
||||
override val firDiagnostic: KtPsiDiagnostic,
|
||||
override val token: ValidityToken,
|
||||
|
||||
Reference in New Issue
Block a user