Prohibit @JvnName on functions mangled because of return type
This commit is contained in:
+15
-1
@@ -10,4 +10,18 @@ inline class Foo(val x: Int) {
|
||||
fun bar(f: Foo) {}
|
||||
|
||||
@JvmName("good")
|
||||
fun baz(r: Result<Int>) {}
|
||||
fun baz(r: Result<Int>) {}
|
||||
|
||||
@JvmName("test")
|
||||
fun returnsInlineClass() = Foo(1)
|
||||
|
||||
@JvmName("test")
|
||||
fun returnsKotlinResult(a: Result<Int>): Result<Int> = a
|
||||
|
||||
class C {
|
||||
@JvmName("test")
|
||||
fun returnsInlineClass() = Foo(1)
|
||||
|
||||
@JvmName("test")
|
||||
fun returnsKotlinResult(a: Result<Int>): Result<Int> = a
|
||||
}
|
||||
+15
-1
@@ -10,4 +10,18 @@ inline class Foo(val x: Int) {
|
||||
fun bar(f: Foo) {}
|
||||
|
||||
@JvmName("good")
|
||||
fun baz(r: Result<Int>) {}
|
||||
fun baz(r: Result<Int>) {}
|
||||
|
||||
@JvmName("test")
|
||||
fun returnsInlineClass() = Foo(1)
|
||||
|
||||
@JvmName("test")
|
||||
fun returnsKotlinResult(a: Result<Int>): Result<Int> = a
|
||||
|
||||
class C {
|
||||
<!INAPPLICABLE_JVM_NAME!>@JvmName("test")<!>
|
||||
fun returnsInlineClass() = Foo(1)
|
||||
|
||||
<!INAPPLICABLE_JVM_NAME!>@JvmName("test")<!>
|
||||
fun returnsKotlinResult(a: Result<Int>): Result<Int> = a
|
||||
}
|
||||
+11
@@ -2,6 +2,17 @@ package
|
||||
|
||||
@kotlin.jvm.JvmName(name = "bad") public fun bar(/*0*/ f: Foo): kotlin.Unit
|
||||
@kotlin.jvm.JvmName(name = "good") public fun baz(/*0*/ r: kotlin.Result<kotlin.Int>): kotlin.Unit
|
||||
@kotlin.jvm.JvmName(name = "test") public fun returnsInlineClass(): Foo
|
||||
@kotlin.jvm.JvmName(name = "test") public fun returnsKotlinResult(/*0*/ a: kotlin.Result<kotlin.Int>): kotlin.Result<kotlin.Int>
|
||||
|
||||
public final class C {
|
||||
public constructor C()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
@kotlin.jvm.JvmName(name = "test") public final fun returnsInlineClass(): Foo
|
||||
@kotlin.jvm.JvmName(name = "test") public final fun returnsKotlinResult(/*0*/ a: kotlin.Result<kotlin.Int>): kotlin.Result<kotlin.Int>
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final inline class Foo {
|
||||
public constructor Foo(/*0*/ x: kotlin.Int)
|
||||
|
||||
Reference in New Issue
Block a user