53f0e6dcd2
#KT-5576 Fixed #KT-5594 Fixed #KT-3166 Fixed #KT-5545 Fixed #KT-5594 Fixed #KT-5258 Fixed JS backend: fix KT-4879: extra side effect when use when in default arguments #KT-4879 Fixed JS backend: improve and fix WhenTranslator, fix order of evaluation for condtitions, fix KT-5263 (JS: extra tmp when initialize val in when by expression with if) #KT-5263 Fixed
27 lines
441 B
Kotlin
27 lines
441 B
Kotlin
package foo
|
|
|
|
fun box(): Boolean {
|
|
if (f(0) != -3) {
|
|
return false
|
|
}
|
|
if (f(102) != 201) {
|
|
return false;
|
|
}
|
|
if (f(103) != 100) {
|
|
return false
|
|
}
|
|
if (f(-100) != -100) {
|
|
return false
|
|
}
|
|
if (f(-99) != -201) {
|
|
return false
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
fun f(i: Int): Int {
|
|
var j = i
|
|
return --j + (if (j < -100) return -100 else --j) + (if (j > 100) return 100 else 0)
|
|
}
|