Add more tests for for-in-array
#KT-21354 Fixed Target versions 1.2.20 #KT-21321 Fixed Target versions 1.2.20
This commit is contained in:
+17
@@ -0,0 +1,17 @@
|
||||
class Del<T>(var x: T) {
|
||||
operator fun getValue(thisRef: Any?, kProp: Any) = x
|
||||
|
||||
operator fun setValue(thisRef: Any?, kProp: Any, value: T) {
|
||||
x = value
|
||||
}
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
var xs by Del(intArrayOf(1, 2, 3))
|
||||
var sum = 0
|
||||
for (x in xs) {
|
||||
sum = sum * 10 + x
|
||||
xs = intArrayOf(4, 5, 6)
|
||||
}
|
||||
return if (sum == 123) "OK" else "Fail: $sum"
|
||||
}
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
var xs: IntArray = intArrayOf(1, 2, 3)
|
||||
get() = field
|
||||
set(ys) {
|
||||
var sum = 0
|
||||
for (x in field) {
|
||||
sum = sum * 10 + x
|
||||
field = intArrayOf(4, 5, 6)
|
||||
}
|
||||
if (sum != 123) throw AssertionError("sum=$sum")
|
||||
field = ys
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
xs = intArrayOf()
|
||||
return "OK"
|
||||
}
|
||||
Reference in New Issue
Block a user