FIR: report VAL_REASSIGNMENT on synthetic immutable properties

#KT-50972 Fixed
This commit is contained in:
Mikhail Glukhikh
2022-01-26 16:21:41 +03:00
committed by teamcity
parent b8c36b7998
commit 029e946fb2
5 changed files with 16 additions and 9 deletions
@@ -1,9 +1,9 @@
// FILE: KotlinFile.kt
fun foo(javaClass: JavaClass) {
javaClass.something1++
javaClass.something2++
javaClass.something3++
javaClass.something4++
javaClass.<!VAL_REASSIGNMENT!>something1<!>++
javaClass.<!VAL_REASSIGNMENT!>something2<!>++
javaClass.<!VAL_REASSIGNMENT!>something3<!>++
javaClass.<!VAL_REASSIGNMENT!>something4<!>++
javaClass.something5 = null
}
@@ -6,7 +6,7 @@ class KotlinClass {
fun foo(javaClass: JavaClass, kotlinClass: KotlinClass) {
useInt(javaClass.getSomething())
useInt(javaClass.something)
javaClass.something = 1
javaClass.<!VAL_REASSIGNMENT!>something<!> = 1
javaClass.<!UNRESOLVED_REFERENCE!>Something<!>
useInt(kotlinClass.getSomething())
kotlinClass.<!UNRESOLVED_REFERENCE!>something<!>
@@ -9,7 +9,7 @@ fun foo(k: KotlinClass) {
if (<!SENSELESS_COMPARISON!>k.something == null<!>) return
k.setSomething(1)
k.something = <!ASSIGNMENT_TYPE_MISMATCH!>1<!>
k.<!VAL_REASSIGNMENT!>something<!> = <!ASSIGNMENT_TYPE_MISMATCH!>1<!>
}
fun useString(i: String) {}