Files
kotlin-fork/compiler/testData/ir/irText/firProblems/AllCandidates.kt
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

36 lines
965 B
Kotlin
Vendored

// TARGET_BACKEND: JVM
// WITH_STDLIB
// FULL_JDK
// FILE: OverloadResolutionResultsImpl.java
import java.util.*;
public class OverloadResolutionResultsImpl<D> {
public Collection<ResolvedCall<D>> getAllCandidates() {
return Collections.emptyList();
}
public void setAllCandidates(Collection<ResolvedCall<D>> allCandidates) {
}
public static <R> OverloadResolutionResultsImpl<R> nameNotFound() {
OverloadResolutionResultsImpl<R> results = new OverloadResolutionResultsImpl<>();
results.setAllCandidates(Collections.emptyList());
return results;
}
}
// FILE: AllCandidates.kt
class ResolvedCall<C>
class MyCandidate(val resolvedCall: ResolvedCall<*>)
private fun <A> allCandidatesResult(allCandidates: Collection<MyCandidate>) =
OverloadResolutionResultsImpl.nameNotFound<A>().apply {
this.allCandidates = allCandidates.map {
it.resolvedCall as ResolvedCall<A>
}
}