KT-6916: do not create Progression instances in for-in-downTo loops

This commit is contained in:
Dmitry Petrov
2016-07-01 12:26:20 +03:00
parent e187f799d9
commit bf4f26318e
10 changed files with 183 additions and 10 deletions

View File

@@ -0,0 +1,15 @@
// WITH_RUNTIME
fun test(): Int {
var sum = 0
for (i in 4 downTo 1) {
sum = sum * 10 + i
}
return sum
}
// 0 iterator
// 0 getStart
// 0 getEnd
// 0 getFirst
// 0 getLast

View File

@@ -1,7 +1,8 @@
fun f() {
for (i in 0..5 step 2) {
}
for (i in 5 downTo 1) {
for (i in 5 downTo 1 step 1) { // suppress optimized code generation for 'for-in-downTo'
}
}