bb8c7dd04c
When a declaration with an ObjC annotation is stored in a different module, the annotation arguments are not resolved by default. This leads to a bug in the checker. Before attempting to find the objCName, it is necessary to resolve the annotation first. #KT-64276
38 lines
690 B
Kotlin
Vendored
38 lines
690 B
Kotlin
Vendored
// FIR_IDENTICAL
|
|
|
|
// MODULE: lib
|
|
// FILE: kotlin1.kt
|
|
@file:OptIn(ExperimentalObjCName::class)
|
|
|
|
package example
|
|
import kotlin.experimental.ExperimentalObjCName
|
|
|
|
interface BaseInterface {
|
|
@kotlin.native.ObjCName("getValue")
|
|
fun getValue(): Int
|
|
}
|
|
|
|
|
|
// MODULE: main(lib)
|
|
// FILE: kotlin2.kt
|
|
|
|
@file:OptIn(ExperimentalObjCName::class)
|
|
|
|
package example
|
|
import kotlin.experimental.ExperimentalObjCName
|
|
|
|
open class BaseClass {
|
|
@kotlin.native.ObjCName("getValue")
|
|
fun getValue(): Int {
|
|
return 0
|
|
}
|
|
}
|
|
|
|
// FILE: kotlin3.kt
|
|
|
|
@file:OptIn(ExperimentalObjCName::class)
|
|
|
|
package example
|
|
import kotlin.experimental.ExperimentalObjCName
|
|
|
|
class Derived: BaseClass(), BaseInterface {} |