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.
43 lines
792 B
Kotlin
Vendored
43 lines
792 B
Kotlin
Vendored
// FIR_IDENTICAL
|
|
object O
|
|
|
|
class TopLevel {
|
|
external class <!NESTED_EXTERNAL_DECLARATION!>A<!>
|
|
|
|
class B
|
|
|
|
fun foo() = 23
|
|
|
|
<!NESTED_EXTERNAL_DECLARATION!>external fun bar(): Int<!>
|
|
|
|
val x = "a"
|
|
|
|
<!NESTED_EXTERNAL_DECLARATION!>external val y: String<!>
|
|
|
|
val O.u: String get() = "O.u"
|
|
}
|
|
|
|
external class TopLevelNative {
|
|
external class <!NESTED_EXTERNAL_DECLARATION!>A<!>
|
|
|
|
class B
|
|
|
|
fun foo(): Int = definedExternally
|
|
|
|
<!NESTED_EXTERNAL_DECLARATION!>external fun bar(): Int<!>
|
|
|
|
val x: String = definedExternally
|
|
|
|
<!NESTED_EXTERNAL_DECLARATION!>external val y: String<!>
|
|
}
|
|
|
|
fun topLevelFun() {
|
|
external class <!NESTED_EXTERNAL_DECLARATION!>A<!>
|
|
|
|
class B
|
|
|
|
fun foo() = 23
|
|
|
|
<!NESTED_EXTERNAL_DECLARATION!>external fun bar(): Int<!>
|
|
}
|