[FIR] Desugar increment/decrement in body resolve phase
The expression needs to be resolved first to determine if there is a receiver that needs to be extracted to a temporary variable. Also, the special case for prefix increment/decrement on local variable without delegates requires resolution to check if the variable is local. ^KT-56771 Fixed ^KT-56659 Fixed
This commit is contained in:
committed by
Space Team
parent
5ecf9cce25
commit
3b9724d20e
+6
-4
@@ -1,9 +1,11 @@
|
||||
fun <F : Any?> test(j: J<F>) {
|
||||
j.getFoo() /*~> Unit */
|
||||
j.setFoo(x = 1)
|
||||
val <receiver>: J<F> = j
|
||||
val <unary>: Int = <receiver>.getFoo()
|
||||
<receiver>.setFoo(x = <unary>.inc())
|
||||
<unary> /*~> Unit */
|
||||
{ // BLOCK
|
||||
val <receiver>: J<F> = j
|
||||
val <unary>: Int = <receiver>.getFoo()
|
||||
<receiver>.setFoo(x = <unary>.inc())
|
||||
<unary>
|
||||
} /*~> Unit */
|
||||
j.setFoo(x = j.getFoo().plus(other = 1))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user