02604060ae
1. Local declarations don't participate in IR-linkage, because they can be referenced only inside the same body -> can be dropped from IR text tests. 2. Mangled names for private declarations computed by descriptors/fir are actually not used anywhere (they are recomputed by IR immediately before serialization of IR). But sometimes such mangled names diverge between K1 and K2 -> don't check them, but always check mangled names computed by IR even for private declarations. 3. Also: Drop DUMP_LOCAL_DECLARATION_SIGNATURES test directive. ^KT-57428 Obsolete ^KT-57430 Obsolete ^KT-57434 Obsolete ^KT-57778 Obsolete ^KT-57775 Obsolete
40 lines
1.1 KiB
Kotlin
Vendored
40 lines
1.1 KiB
Kotlin
Vendored
// CHECK:
|
|
// Mangled name: C
|
|
// Public signature: /C|null[0]
|
|
class C {
|
|
// CHECK:
|
|
// Mangled name: C{}c
|
|
// Public signature: /C.c|-4416962153448040627[0]
|
|
// Public signature debug description: {}c
|
|
val c: Int
|
|
// CHECK JVM_IR:
|
|
// Mangled name: C#<get-c>(){}kotlin.Int
|
|
// Public signature: /C.c.<get-c>|-2440337234483931882[0]
|
|
// Public signature debug description: <get-c>(){}kotlin.Int
|
|
// CHECK JS_IR NATIVE:
|
|
// Mangled name: C#<get-c>(){}
|
|
// Public signature: /C.c.<get-c>|2368736057102379596[0]
|
|
// Public signature debug description: <get-c>(){}
|
|
get
|
|
|
|
// CHECK:
|
|
// Mangled name: C#<init>(){}
|
|
// Public signature: /C.<init>|-5645683436151566731[0]
|
|
// Public signature debug description: <init>(){}
|
|
constructor() /* primary */
|
|
|
|
}
|
|
|
|
// CHECK:
|
|
// Mangled name: #bar(C){}
|
|
// Public signature: /bar|-380723744805794672[0]
|
|
// Public signature debug description: bar(C){}
|
|
fun bar(c: C): Unit
|
|
|
|
// CHECK:
|
|
// Mangled name: #foo!C(){}
|
|
// Public signature: /foo|-1491377105373055541[0]
|
|
// Public signature debug description: foo!C(){}
|
|
fun foo($context_receiver_0: C): Unit
|
|
|