Files
kotlin-fork/compiler/testData/ir/irText/firProblems/AllCandidates.sig.kt.txt
T
Dmitriy Dolovov 02604060ae IR text tests: Don't dump signatures for local declarations
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
2023-11-30 08:32:35 +00:00

41 lines
1.6 KiB
Kotlin
Vendored

// CHECK:
// Mangled name: MyCandidate
// Public signature: /MyCandidate|null[0]
class MyCandidate {
// CHECK:
// Mangled name: MyCandidate{}resolvedCall
// Public signature: /MyCandidate.resolvedCall|-2429780263902948392[0]
// Public signature debug description: {}resolvedCall
val resolvedCall: ResolvedCall<*>
// CHECK JVM_IR:
// Mangled name: MyCandidate#<get-resolvedCall>(){}ResolvedCall<*>
// Public signature: /MyCandidate.resolvedCall.<get-resolvedCall>|2961495013206965605[0]
// Public signature debug description: <get-resolvedCall>(){}ResolvedCall<*>
get
// CHECK:
// Mangled name: MyCandidate#<init>(ResolvedCall<*>){}
// Public signature: /MyCandidate.<init>|-1587603405695784398[0]
// Public signature debug description: <init>(ResolvedCall<*>){}
constructor(resolvedCall: ResolvedCall<*>) /* primary */
}
// CHECK:
// Mangled name: ResolvedCall
// Public signature: /ResolvedCall|null[0]
class ResolvedCall<C : Any?> {
// CHECK:
// Mangled name: ResolvedCall#<init>(){}
// Public signature: /ResolvedCall.<init>|-5645683436151566731[0]
// Public signature debug description: <init>(){}
constructor() /* primary */
}
// CHECK JVM_IR:
// Mangled name: #allCandidatesResult(kotlin.collections.Collection<MyCandidate>){0§<kotlin.Any?>}OverloadResolutionResultsImpl<0:0?>?
// Public signature: [ File '/AllCandidates.kt' <- /allCandidatesResult|-4417746287859138452[0] ]
private fun <A : Any?> allCandidatesResult(allCandidates: Collection<MyCandidate>): OverloadResolutionResultsImpl<A?>?