FIR2IR: add local delegated property generation

This commit is contained in:
pyos
2020-09-07 14:11:17 +02:00
committed by Mikhail Glukhikh
parent 4792be2522
commit f198a19ab0
43 changed files with 211 additions and 217 deletions
@@ -1,4 +1,3 @@
// IGNORE_BACKEND_FIR: JVM_IR
package foo
import kotlin.reflect.KProperty
@@ -1,4 +1,3 @@
// IGNORE_BACKEND_FIR: JVM_IR
package foo
import kotlin.reflect.KProperty
@@ -14,7 +14,8 @@ class Delegate {
fun box(): String {
var prop: Int by Delegate()
if (prop != 1) return "fail get 1"
run { prop = 2 }
if (prop != 2) return "fail get"
return run { if (prop != 2) "fail set" else "OK" }
if (prop != 2) return "fail get 2"
return run { if (prop != 2) "fail get 3" else "OK" }
}
@@ -14,7 +14,8 @@ class Delegate {
fun box(): String {
var prop: Int by Delegate()
if (prop != 1) return "fail get 1"
run { prop = 2 }
if (prop != 2) return "fail get"
return run { if (prop != 2) "fail set" else "OK" }
if (prop != 2) return "fail get 2"
return run { if (prop != 2) "fail get 3" else "OK" }
}
@@ -1,4 +1,3 @@
// IGNORE_BACKEND_FIR: JVM_IR
package foo
import kotlin.reflect.KProperty
@@ -1,4 +1,3 @@
// IGNORE_BACKEND_FIR: JVM_IR
package foo
import kotlin.reflect.KProperty
@@ -1,4 +1,3 @@
// IGNORE_BACKEND_FIR: JVM_IR
//WITH_RUNTIME
fun box(): String {
val x by lazy { "OK" }
@@ -1,5 +1,3 @@
// IGNORE_BACKEND_FIR: JVM_IR
object Whatever {
operator fun getValue(thisRef: Any?, prop: Any?) = "OK"
}
@@ -1,5 +1,3 @@
// IGNORE_BACKEND_FIR: JVM_IR
class Delegate(val value: String) {
operator fun getValue(thisRef: Any?, kProperty: Any?) = value
}
@@ -1,4 +1,3 @@
// IGNORE_BACKEND_FIR: JVM_IR
package foo
import kotlin.reflect.KProperty
@@ -1,4 +1,3 @@
// IGNORE_BACKEND_FIR: JVM_IR
package foo
import kotlin.reflect.KProperty
@@ -1,4 +1,3 @@
// IGNORE_BACKEND_FIR: JVM_IR
package foo
import kotlin.reflect.KProperty
@@ -1,4 +1,3 @@
// IGNORE_BACKEND_FIR: JVM_IR
package foo
import kotlin.reflect.KProperty