Remove redundant locals
Do not transform already transformed suspend lambdas Ignore duplicates of continuation in local variable table during redundant locals elimination.
This commit is contained in:
@@ -15,6 +15,7 @@ suspend inline fun test2(crossinline c: suspend () -> Unit) {
|
||||
// FILE: box.kt
|
||||
|
||||
import kotlin.coroutines.experimental.*
|
||||
import kotlin.coroutines.experimental.intrinsics.*
|
||||
|
||||
fun builder(c: suspend () -> Unit) {
|
||||
c.startCoroutine(object: Continuation<Unit> {
|
||||
@@ -30,7 +31,10 @@ fun builder(c: suspend () -> Unit) {
|
||||
})
|
||||
}
|
||||
|
||||
suspend fun calculate() = "OK"
|
||||
suspend fun calculate() = suspendCoroutineOrReturn<String> {
|
||||
it.resume("OK")
|
||||
COROUTINE_SUSPENDED
|
||||
}
|
||||
|
||||
fun box() : String {
|
||||
var res = "FAIL 1"
|
||||
|
||||
Reference in New Issue
Block a user