backend: Use IrComposite instead of IrBlock in headers of 'for' loops

This commit is contained in:
Ilya Matveev
2017-07-19 18:16:38 +07:00
committed by ilmat192
parent c4acdf1b25
commit 0ddc002b8d
3 changed files with 48 additions and 6 deletions
+9
View File
@@ -348,6 +348,15 @@ task codegen_controlflow_for_loops_nested(type: RunKonanTest) {
"00 10 20 \n"
}
task codegen_controlflow_for_loops_coroutines(type: RunKonanTest) {
source = "codegen/controlflow/for_loops_coroutines.kt"
goldValue = "before: 0 after: 0\n" +
"before: 2 after: 2\n" +
"before: 4 after: 4\n" +
"before: 6 after: 6\n" +
"Got: 0 2 4 6\n"
}
task local_variable(type: RunKonanTest) {
source = "codegen/basics/local_variable.kt"
}
@@ -0,0 +1,12 @@
import kotlin.coroutines.experimental.*
fun main(args: Array<String>) {
val sq = buildSequence {
for (i in 0..6 step 2) {
print("before: $i ")
yield(i)
println("after: $i")
}
}
println("Got: ${sq.joinToString(separator = " ")}")
}