Files
kotlin-fork/compiler/testData/diagnostics/testsWithStdLib/annotations/annotationApplicability/jvmNameOnMangledNames.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

31 lines
651 B
Kotlin
Vendored

// !LANGUAGE: +InlineClasses
// !DIAGNOSTICS: -UNUSED_PARAMETER
inline class Foo(val x: Int) {
<!INAPPLICABLE_JVM_NAME!>@JvmName("other")<!>
fun simple() {}
}
@JvmName("bad")
fun bar(f: Foo) {}
@JvmName("good")
fun baz(r: Result<Int>) {}
@JvmName("test")
fun returnsInlineClass() = Foo(1)
@JvmName("test")
fun returnsKotlinResult(a: Result<Int>): <!RESULT_CLASS_IN_RETURN_TYPE!>Result<Int><!> = a
class C {
@JvmName("test")
fun returnsInlineClass() = Foo(1)
@JvmName("test")
fun returnsKotlinResult(a: Result<Int>): <!RESULT_CLASS_IN_RETURN_TYPE!>Result<Int><!> = a
}
@JvmName("extensionFun")
fun Foo.extensionFun() {}