a20e29e8b7
The JsAllowValueClassesInExternals feature is enabled explicitly, because otherwise it's enabled implicitly depending on the backend. See: org/jetbrains/kotlin/test/builders/LanguageVersionSettingsBuilder.kt:90 A property may have a fake source return kind, while its accessor has a real source kind. In this case we can't "just copy" the property return type down to the accessor.
19 lines
447 B
Kotlin
Vendored
19 lines
447 B
Kotlin
Vendored
external interface I
|
|
|
|
external object O : I
|
|
|
|
|
|
class Delegate {
|
|
operator fun getValue(thisRef: Any?, property: Any): String = ""
|
|
|
|
operator fun setValue(thisRef: Any?, property: Any, value: String) {}
|
|
}
|
|
|
|
external class A : <!EXTERNAL_DELEGATION!>I<!> by O {
|
|
val prop by <!EXTERNAL_DELEGATION!>Delegate()<!>
|
|
|
|
var mutableProp by <!EXTERNAL_DELEGATION!>Delegate()<!>
|
|
}
|
|
|
|
external val topLevelProp by <!EXTERNAL_DELEGATION!>Delegate()<!>
|