From 2ccad553e676c3207585a4c511c47b5f1e960275 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Sat, 15 Apr 2023 11:12:34 +0200 Subject: [PATCH] K1/K2: allow to apply suspend modifier to anonymous function #KT-57991 Fixed --- .../org/jetbrains/kotlin/resolve/ModifierCheckerHelpers.kt | 7 ++++++- .../tests/modifiers/suspendAnonymousFunction.kt | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/compiler/psi/src/org/jetbrains/kotlin/resolve/ModifierCheckerHelpers.kt b/compiler/psi/src/org/jetbrains/kotlin/resolve/ModifierCheckerHelpers.kt index 449db5e1286..023f5fb6e6d 100644 --- a/compiler/psi/src/org/jetbrains/kotlin/resolve/ModifierCheckerHelpers.kt +++ b/compiler/psi/src/org/jetbrains/kotlin/resolve/ModifierCheckerHelpers.kt @@ -217,7 +217,12 @@ val possibleTargetMap = mapOf( ), NOINLINE_KEYWORD to EnumSet.of(KotlinTarget.VALUE_PARAMETER), TAILREC_KEYWORD to EnumSet.of(KotlinTarget.FUNCTION), - SUSPEND_KEYWORD to EnumSet.of(KotlinTarget.MEMBER_FUNCTION, KotlinTarget.TOP_LEVEL_FUNCTION, KotlinTarget.LOCAL_FUNCTION), + SUSPEND_KEYWORD to EnumSet.of( + KotlinTarget.MEMBER_FUNCTION, + KotlinTarget.TOP_LEVEL_FUNCTION, + KotlinTarget.LOCAL_FUNCTION, + KotlinTarget.ANONYMOUS_FUNCTION + ), EXTERNAL_KEYWORD to EnumSet.of( KotlinTarget.FUNCTION, KotlinTarget.PROPERTY, diff --git a/compiler/testData/diagnostics/tests/modifiers/suspendAnonymousFunction.kt b/compiler/testData/diagnostics/tests/modifiers/suspendAnonymousFunction.kt index 839a6f3887c..fd89d7c2e48 100644 --- a/compiler/testData/diagnostics/tests/modifiers/suspendAnonymousFunction.kt +++ b/compiler/testData/diagnostics/tests/modifiers/suspendAnonymousFunction.kt @@ -2,7 +2,7 @@ // ISSUE: KT-57991 fun foo() { - suspend fun() { + suspend fun() { } }