Files
kotlin-fork/compiler/testData/codegen/box/callableReference/adaptedReferences/suspendUnitConversion.kt
T
Svyatoslav Kuzmich 432c9fe592 [Wasm] Fix SuspendFunctionKind.DELEGATING bug (KT-60700)
When detecting function delegation at the last statement position we
need to make sure that delegating call has unit return type, otherwise
we would try to return non-Unit value from a parent function returning
 Unit

^KT-60700 Fixed
2023-08-16 12:47:22 +00:00

22 lines
433 B
Kotlin
Vendored

// WITH_COROUTINES
// WITH_STDLIB
import helpers.*
import kotlin.coroutines.*
import kotlin.coroutines.intrinsics.*
suspend fun foo(x: suspend () -> Unit) = x()
suspend fun bar(): Int = suspendCoroutineUninterceptedOrReturn<Int> {
it.resume(1)
COROUTINE_SUSPENDED
}
fun box(): String {
var result = ""
suspend {
foo(::bar)
result += "OK"
}.startCoroutine(EmptyContinuation)
return result
}