IR: use inlineClassRepresentation in getInlineClassUnderlyingType
Looking for the primary constructor manually doesn't work if it's private in the other module on JVM, because private declarations are skipped in IrLazyClass.
This commit is contained in:
+23
@@ -0,0 +1,23 @@
|
||||
// IGNORE_BACKEND: WASM
|
||||
// MODULE: lib
|
||||
// FILE: lib.kt
|
||||
|
||||
inline class Z private constructor(private val value: Any?) {
|
||||
fun result(): String = value as String
|
||||
|
||||
companion object {
|
||||
fun create(value: Any?): Z = Z(value)
|
||||
}
|
||||
}
|
||||
|
||||
fun interface IFoo<T> {
|
||||
fun foo(x: T): String
|
||||
}
|
||||
|
||||
fun foo1(fs: IFoo<Z>) = fs.foo(Z.create("OK"))
|
||||
|
||||
// MODULE: main(lib)
|
||||
// FILE: main.kt
|
||||
|
||||
fun box(): String =
|
||||
foo1 { it.result() }
|
||||
Reference in New Issue
Block a user