mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-05-18 08:31:38 +00:00
Forward compatibility hacks for Result.{success, failure}
Don't mangled functions annotated with @JvmName.
Annotate 'Result.success' and 'Result.failure' with @JvmName and
@Suppress("INAPPLICABLE_JVM_NAME").
NB this would require bootstrap.
This commit is contained in:
21
compiler/testData/codegen/bytecodeText/inlineClasses/noManglingForFunctionsWithJvmName.kt
vendored
Normal file
21
compiler/testData/codegen/bytecodeText/inlineClasses/noManglingForFunctionsWithJvmName.kt
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
// WITH_RUNTIME
|
||||
inline class IC(val x: Int)
|
||||
|
||||
class C {
|
||||
@Suppress("INAPPLICABLE_JVM_NAME")
|
||||
@JvmName("test")
|
||||
fun test() = IC(42)
|
||||
|
||||
@Suppress("INAPPLICABLE_JVM_NAME")
|
||||
@JvmName("differentName")
|
||||
fun test2() = IC(42)
|
||||
}
|
||||
|
||||
fun call1() = C().test()
|
||||
|
||||
fun call2() = C().test2()
|
||||
|
||||
// 1 public final test\(\)I
|
||||
// 1 INVOKEVIRTUAL C.test \(\)I
|
||||
// 1 public final differentName\(\)I
|
||||
// 1 INVOKEVIRTUAL C.differentName \(\)I
|
||||
Reference in New Issue
Block a user