[IR] Dump IdSignatures and mangled names in irText tests
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
This commit is contained in:
committed by
Space Team
parent
bccf69910d
commit
6e8283a6fe
+60
@@ -0,0 +1,60 @@
|
||||
package test
|
||||
|
||||
// CHECK:
|
||||
// Mangled name: test.C
|
||||
// Public signature: test/C|null[0]
|
||||
class C {
|
||||
// CHECK:
|
||||
// Mangled name: test.C#<init>(){}
|
||||
// Public signature: test/C.<init>|-5645683436151566731[0]
|
||||
constructor() /* primary */
|
||||
|
||||
}
|
||||
|
||||
// CHECK JVM_IR:
|
||||
// Mangled name: test#get@kotlin.Int?(kotlin.Int){}kotlin.Int
|
||||
// Public signature: test/get|-6221002532708237996[0]
|
||||
// CHECK JS_IR NATIVE:
|
||||
// Mangled name: test#get@kotlin.Int?(kotlin.Int){}
|
||||
// Public signature: test/get|2096149375626254616[0]
|
||||
operator fun Int?.get(index: Int): Int
|
||||
|
||||
// CHECK JVM_IR:
|
||||
// Mangled name: test#inc@kotlin.Int?(){}kotlin.Int?
|
||||
// Public signature: test/inc|-8688916183051881962[0]
|
||||
// CHECK JS_IR NATIVE:
|
||||
// Mangled name: test#inc@kotlin.Int?(){}
|
||||
// Public signature: test/inc|7389847627046551690[0]
|
||||
operator fun Int?.inc(): Int?
|
||||
|
||||
// CHECK:
|
||||
// Mangled name: test#set@kotlin.Int?(kotlin.Int;kotlin.Int){}
|
||||
// Public signature: test/set|6578463135726025700[0]
|
||||
operator fun Int?.set(index: Int, value: Int): Unit
|
||||
|
||||
// CHECK:
|
||||
// Mangled name: test#testArrayAccess(test.C?){}
|
||||
// Public signature: test/testArrayAccess|4252489655706845013[0]
|
||||
fun testArrayAccess(nc: C?): Unit
|
||||
|
||||
// CHECK:
|
||||
// Mangled name: test#testProperty(test.C?){}
|
||||
// Public signature: test/testProperty|-2369045043413337370[0]
|
||||
fun testProperty(nc: C?): Unit
|
||||
|
||||
// CHECK:
|
||||
// Mangled name: test@test.C?{}p
|
||||
// Public signature: test/p|-1845876355852807020[0]
|
||||
var C?.p: Int
|
||||
// CHECK JVM_IR:
|
||||
// Mangled name: test#<get-p>@test.C?(){}kotlin.Int
|
||||
// Public signature: test/p.<get-p>|-8557468444569568699[0]
|
||||
// CHECK JS_IR NATIVE:
|
||||
// Mangled name: test#<get-p>@test.C?(){}
|
||||
// Public signature: test/p.<get-p>|-8829073944247347395[0]
|
||||
get(): Int
|
||||
// CHECK:
|
||||
// Mangled name: test#<set-p>@test.C?(kotlin.Int){}
|
||||
// Public signature: test/p.<set-p>|358628307976846417[0]
|
||||
set(value: Int): Unit
|
||||
|
||||
Reference in New Issue
Block a user