Files
kotlin-fork/compiler/testData/codegen/bytecodeListing/inlineClasses/jvmName.kt
T
Ilmir Usmanov 78e607c6b0 Value classes: Support @JvmName annotation on functions with inline
classes in signatures, but not on methods of inline classes.
2020-11-28 00:34:04 +01:00

30 lines
575 B
Kotlin
Vendored

// !LANGUAGE: +InlineClasses
// WITH_RUNTIME
inline class Foo(val a: Any)
@JvmName("bar")
fun bar(f: Foo) {}
@JvmName("baz")
fun baz(r: Result<Int>) {}
@JvmName("test")
fun returnsInlineClass() = Foo(1)
@JvmName("test")
@Suppress("RESULT_CLASS_IN_RETURN_TYPE")
fun returnsKotlinResult(a: Result<Int>): Result<Int> = a
class C {
@JvmName("test")
fun returnsInlineClass() = Foo(1)
@JvmName("test")
@Suppress("RESULT_CLASS_IN_RETURN_TYPE")
fun returnsKotlinResult(a: Result<Int>): Result<Int> = a
}
@JvmName("extensionFun")
fun Foo.extensionFun() {}