Files
kotlin/compiler/testData/codegen/box/coroutines/handleResultNonUnitExpression.kt
Roman Artemev efec82c0eb Update test data
* add new tests for coroutines
 * add copy of some tests without dependency on stdlib
2018-08-08 18:33:41 +03:00

34 lines
618 B
Kotlin
Vendored

// IGNORE_BACKEND: JVM_IR
// WITH_RUNTIME
// WITH_COROUTINES
// COMMON_COROUTINES_TEST
import helpers.*
import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.*
suspend fun suspendHere(): String = suspendCoroutineUninterceptedOrReturn { x ->
x.resume("OK")
COROUTINE_SUSPENDED
}
fun builder(c: suspend () -> Unit) {
var isCompleted = false
c.startCoroutine(handleResultContinuation {
isCompleted = true
})
if (!isCompleted) throw RuntimeException("fail")
}
fun box(): String {
builder {
"OK"
}
builder {
suspendHere()
}
return "OK"
}