[FIR] Prohibit statement-like expressions in expression context

^KT-61067 Fixed
This commit is contained in:
Nikolay Lunyak
2023-08-11 14:56:02 +03:00
parent 5c19cb3fcb
commit b25a67a50e
19 changed files with 183 additions and 91 deletions
@@ -1,23 +0,0 @@
//KT-629 Assignments are parsed as expressions.
package kt629
class A() {
var p = "yeah"
operator fun rem(other : A) : A {
return A();
}
}
fun box() : Boolean {
var c = A()
val d = c;
c %= A();
return (c != d) && <!EXPRESSION_EXPECTED!>(c.p = "yeah")<!>
}
fun box2() : Boolean {
var c = A()
return <!EXPRESSION_EXPECTED!>(c.p = "yeah")<!> && true
}
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
//KT-629 Assignments are parsed as expressions.
package kt629