mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-05-08 08:31:26 +00:00
Existing code for receiver generation accidentally worked in most cases
for object members imported by name. However, it generated strange
bytecode (such as
GETFIELD AnObject.INSTANCE
GETFIELD AnObject.INSTANCE
POP
), and worked incorrectly for augmented assignments.
#KT-21343 Fixed Target versions 1.2.20
24 lines
341 B
Kotlin
Vendored
24 lines
341 B
Kotlin
Vendored
// WITH_RUNTIME
|
|
|
|
import Host.x
|
|
|
|
object A {
|
|
var xx = intArrayOf(0)
|
|
}
|
|
|
|
object Host {
|
|
val A.x get() = A.xx
|
|
}
|
|
|
|
fun box(): String {
|
|
A.x[0] += 1
|
|
if (A.x[0] != 1) return "Fail 1: ${A.x[0]}"
|
|
|
|
A.x[0]++
|
|
if (A.x[0] != 2) return "Fail 2: ${A.x[0]}"
|
|
|
|
++A.x[0]
|
|
if (A.x[0] != 3) return "Fail 3: ${A.x[0]}"
|
|
|
|
return "OK"
|
|
} |