Remove redundant continuation classes and INNERCLASS nodes

#KT-31339 Fixed
This commit is contained in:
Ilmir Usmanov
2019-05-06 21:29:49 +03:00
parent ccf2941f4a
commit 360e30c133
12 changed files with 875 additions and 99 deletions
@@ -6,6 +6,8 @@ import helpers.*
import kotlin.coroutines.experimental.*
import kotlin.coroutines.experimental.intrinsics.*
suspend fun dummy() {}
fun builder(c: suspend () -> Unit) {
c.startCoroutine(EmptyContinuation)
}
@@ -21,7 +23,7 @@ inline fun inlineMe(crossinline c: suspend () -> String) = object : SuspendRunna
fun box(): String {
var res = "FAIL"
builder {
res = inlineMe { "OK" }.run()
res = inlineMe { dummy(); "OK" }.run()
}
return res
}
@@ -5,6 +5,8 @@ import helpers.*
import kotlin.coroutines.*
import kotlin.coroutines.intrinsics.*
suspend fun dummy() {}
fun builder(c: suspend () -> Unit) {
c.startCoroutine(EmptyContinuation)
}
@@ -20,7 +22,7 @@ inline fun inlineMe(crossinline c: suspend () -> String) = object : SuspendRunna
fun box(): String {
var res = "FAIL"
builder {
res = inlineMe { "OK" }.run()
res = inlineMe { dummy(); "OK" }.run()
}
return res
}