KT-469 Allow val-reassignment when appropriate functions are defined

This commit is contained in:
svtk
2011-11-21 17:34:31 +04:00
parent a00ad38a1c
commit a7a5fa852e
2 changed files with 47 additions and 1 deletions
@@ -0,0 +1,27 @@
namespace kt469
//KT-512 plusAssign() : Unit does not work properly
import java.util.*
fun bar(list : List<Int>) {
for (i in 1..10) {
list += i // error
}
System.out?.println(list)
}
fun <T> List<T>.plusAssign(t : T) {
add(t)
}
//KT-469 Allow val-reassignment when appropriate functions are defined
fun foo() {
val m = MyNumber(2)
m -= MyNumber(3) //should not be error here
}
class MyNumber(var i: Int) {
fun minusAssign(m : MyNumber) {
i -= m.i
}
}