Files
kotlin-fork/compiler/testData/codegen/box/inlineClasses/genericInlineClassSynthMembers.kt
T
Ivan Kylchik c7435ba760 Replace all occurrences of WITH_RUNTIME with WITH_STDLIB
We are going to deprecate `WITH_RUNTIME` directive. The main reason
behind this change is that `WITH_STDLIB` directive better describes
its meaning, specifically it will add kotlin stdlib to test's classpath.
2021-11-17 15:26:38 +03:00

28 lines
466 B
Kotlin
Vendored

// WITH_STDLIB
// MODULE: lib1
// FILE: lib1.kt
class C<T>(val t: T) {
override fun hashCode(): Int = t as Int
}
// MODULE: lib2(lib1)
// FILE: lib2.kt
@Suppress("OPTIONAL_DECLARATION_USAGE_IN_NON_COMMON_SOURCE")
@kotlin.jvm.JvmInline
value class IC<TT>(val c: C<TT>) {
fun foo(): Int = c.hashCode()
}
// MODULE: main(lib1, lib2)
// FILE: main.kt
fun box(): String {
val ic = IC<Int>(C(42))
if (ic.foo() != 42) return "FAIL"
return "OK"
}