[FIR] Handle open in interface correctly during status resolve

This commit is contained in:
Mikhail Glukhikh
2020-08-20 14:25:40 +03:00
parent 8e2c5bf4fe
commit 99d2fd7c4d
6 changed files with 75 additions and 6 deletions
@@ -0,0 +1,15 @@
interface Some {
open fun foo()
open fun bar() {}
open val x: Int
open val y = 1
open val z get() = 1
open var xx: Int
open var yy = 1
open var zz: Int
set(value) {
field = value
}
}
@@ -0,0 +1,33 @@
FILE: openInInterface.kt
public abstract interface Some : R|kotlin/Any| {
public abstract fun foo(): R|kotlin/Unit|
public open fun bar(): R|kotlin/Unit| {
}
public abstract val x: R|kotlin/Int|
public get(): R|kotlin/Int|
public open val y: R|kotlin/Int| = Int(1)
public get(): R|kotlin/Int|
public open val z: R|kotlin/Int|
public get(): R|kotlin/Int| {
^ Int(1)
}
public abstract var xx: R|kotlin/Int|
public get(): R|kotlin/Int|
public set(value: R|kotlin/Int|): R|kotlin/Unit|
public open var yy: R|kotlin/Int| = Int(1)
public get(): R|kotlin/Int|
public set(value: R|kotlin/Int|): R|kotlin/Unit|
public open var zz: R|kotlin/Int|
public get(): R|kotlin/Int|
public set(value: R|kotlin/Int|): R|kotlin/Unit| {
this@R|/Some|.F|/Some.zz| = R|<local>/value|
}
}