JVM_IR: further refine synthetic accessor generation

References to protected members from crossinline lambdas in the same
package do not need accessors.
This commit is contained in:
pyos
2020-01-28 14:18:44 +01:00
committed by max-kammerer
parent 21d3adf084
commit bda5b0d5a9
17 changed files with 154 additions and 60 deletions
@@ -0,0 +1,17 @@
package a
open class A {
protected fun protectedFun(): String = "OK"
}
inline fun foo(crossinline bar: () -> String) = object {
fun baz() = bar()
}.baz()
class BSamePackage: A() {
fun test(): String = foo {
protectedFun()
}
}
// 0 INVOKESTATIC a/BSamePackage.access