Value classes: Support @JvmName annotation on functions with inline

classes in signatures, but not on methods of inline classes.
This commit is contained in:
Ilmir Usmanov
2020-11-23 23:44:41 +01:00
parent 871912f257
commit 78e607c6b0
6 changed files with 79 additions and 8 deletions
@@ -6,7 +6,7 @@ inline class Foo(val x: Int) {
fun simple() {}
}
<!INAPPLICABLE_JVM_NAME!>@JvmName("bad")<!>
@JvmName("bad")
fun bar(f: Foo) {}
@JvmName("good")
@@ -19,12 +19,12 @@ fun returnsInlineClass() = Foo(1)
fun returnsKotlinResult(a: Result<Int>): <!RESULT_CLASS_IN_RETURN_TYPE!>Result<Int><!> = a
class C {
<!INAPPLICABLE_JVM_NAME!>@JvmName("test")<!>
@JvmName("test")
fun returnsInlineClass() = Foo(1)
<!INAPPLICABLE_JVM_NAME!>@JvmName("test")<!>
@JvmName("test")
fun returnsKotlinResult(a: Result<Int>): <!RESULT_CLASS_IN_RETURN_TYPE!>Result<Int><!> = a
}
<!INAPPLICABLE_JVM_NAME!>@JvmName("extensionFun")<!>
@JvmName("extensionFun")
fun Foo.extensionFun() {}