FE: Make synchronized suspend functions and lambdas error in 1.8
#KT-27333 Fixed
This commit is contained in:
+12
@@ -4018,6 +4018,18 @@ internal val KT_DIAGNOSTIC_CONVERTER = KtDiagnosticConverterBuilder.buildConvert
|
||||
token,
|
||||
)
|
||||
}
|
||||
add(FirJvmErrors.SYNCHRONIZED_ON_SUSPEND.errorFactory) { firDiagnostic ->
|
||||
SynchronizedOnSuspendErrorImpl(
|
||||
firDiagnostic as KtPsiDiagnostic,
|
||||
token,
|
||||
)
|
||||
}
|
||||
add(FirJvmErrors.SYNCHRONIZED_ON_SUSPEND.warningFactory) { firDiagnostic ->
|
||||
SynchronizedOnSuspendWarningImpl(
|
||||
firDiagnostic as KtPsiDiagnostic,
|
||||
token,
|
||||
)
|
||||
}
|
||||
add(FirJvmErrors.OVERLOADS_WITHOUT_DEFAULT_ARGUMENTS) { firDiagnostic ->
|
||||
OverloadsWithoutDefaultArgumentsImpl(
|
||||
firDiagnostic as KtPsiDiagnostic,
|
||||
|
||||
+8
@@ -2797,6 +2797,14 @@ sealed class KtFirDiagnostic<PSI : PsiElement> : KtDiagnosticWithPsi<PSI> {
|
||||
override val diagnosticClass get() = SynchronizedOnInline::class
|
||||
}
|
||||
|
||||
abstract class SynchronizedOnSuspendError : KtFirDiagnostic<KtAnnotationEntry>() {
|
||||
override val diagnosticClass get() = SynchronizedOnSuspendError::class
|
||||
}
|
||||
|
||||
abstract class SynchronizedOnSuspendWarning : KtFirDiagnostic<KtAnnotationEntry>() {
|
||||
override val diagnosticClass get() = SynchronizedOnSuspendWarning::class
|
||||
}
|
||||
|
||||
abstract class OverloadsWithoutDefaultArguments : KtFirDiagnostic<KtAnnotationEntry>() {
|
||||
override val diagnosticClass get() = OverloadsWithoutDefaultArguments::class
|
||||
}
|
||||
|
||||
+10
@@ -3378,6 +3378,16 @@ internal class SynchronizedOnInlineImpl(
|
||||
override val token: ValidityToken,
|
||||
) : KtFirDiagnostic.SynchronizedOnInline(), KtAbstractFirDiagnostic<KtAnnotationEntry>
|
||||
|
||||
internal class SynchronizedOnSuspendErrorImpl(
|
||||
override val firDiagnostic: KtPsiDiagnostic,
|
||||
override val token: ValidityToken,
|
||||
) : KtFirDiagnostic.SynchronizedOnSuspendError(), KtAbstractFirDiagnostic<KtAnnotationEntry>
|
||||
|
||||
internal class SynchronizedOnSuspendWarningImpl(
|
||||
override val firDiagnostic: KtPsiDiagnostic,
|
||||
override val token: ValidityToken,
|
||||
) : KtFirDiagnostic.SynchronizedOnSuspendWarning(), KtAbstractFirDiagnostic<KtAnnotationEntry>
|
||||
|
||||
internal class OverloadsWithoutDefaultArgumentsImpl(
|
||||
override val firDiagnostic: KtPsiDiagnostic,
|
||||
override val token: ValidityToken,
|
||||
|
||||
Reference in New Issue
Block a user