6e8283a6fe
The reason #1 for this feature is that we want to test IdSignatures generated for declarations. Currently, there is no (easy) way to ensure that a change in the signature building logic doesn't cause any breaking changes wrt klibs. Now, most IdSignatures include hashed mangled names in them, so even if we catch a regression where the included hash changes, there would be no way of knowing immediately what caused it, unless we'd also have mangled names in the expectations. The reason #2 is to test the manglers themselves. Currently, there are no tests for them. They heavily duplicate each other, this is already causing issues (see KT-57427) that would be very hard to catch without these tests. ^KT-58238 Fixed
41 lines
1.1 KiB
Kotlin
Vendored
41 lines
1.1 KiB
Kotlin
Vendored
// CHECK:
|
|
// Mangled name: IFoo
|
|
// Public signature: /IFoo|null[0]
|
|
fun interface IFoo {
|
|
|
|
// CHECK:
|
|
// Mangled name: IFoo#foo(kotlin.Int){}
|
|
// Public signature: /IFoo.foo|-104159190164110731[0]
|
|
abstract fun foo(i: Int): Unit
|
|
|
|
}
|
|
|
|
// CHECK:
|
|
// Mangled name: #testAdaptedCR(){}
|
|
// Public signature: /testAdaptedCR|-2000726175248606[0]
|
|
fun testAdaptedCR(): Unit
|
|
|
|
// CHECK:
|
|
// Mangled name: #testLambda(){}
|
|
// Public signature: /testLambda|-124997257399938843[0]
|
|
fun testLambda(): Unit
|
|
|
|
// CHECK:
|
|
// Mangled name: #testSeveralLambdas(){}
|
|
// Public signature: /testSeveralLambdas|884186753581284332[0]
|
|
fun testSeveralLambdas(): Unit
|
|
|
|
// CHECK:
|
|
// Mangled name: #useVararg(kotlin.Array<out|IFoo>...){}
|
|
// Public signature: /useVararg|-167843892719966590[0]
|
|
fun useVararg(vararg foos: IFoo): Unit
|
|
|
|
// CHECK JVM_IR:
|
|
// Mangled name: #withVarargOfInt(kotlin.IntArray...){}kotlin.String
|
|
// Public signature: /withVarargOfInt|-4664776409518571139[0]
|
|
// CHECK JS_IR NATIVE:
|
|
// Mangled name: #withVarargOfInt(kotlin.IntArray...){}
|
|
// Public signature: /withVarargOfInt|-232972314185863621[0]
|
|
fun withVarargOfInt(vararg xs: Int): String
|
|
|