diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/FirBodyResolveTransformer.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/FirBodyResolveTransformer.kt index 9ca4df21a7e..1fbe8237a78 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/FirBodyResolveTransformer.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/FirBodyResolveTransformer.kt @@ -554,8 +554,12 @@ open class FirBodyResolveTransformer(val session: FirSession, val implicitTypeOn val consumer = createFunctionConsumer(session, name, info, inferenceComponents) val result = resolver.runTowerResolver(consumer, implicitReceiverStack.asReversed()) val bestCandidates = result.bestCandidates() - val reducedCandidates = ConeOverloadConflictResolver(TypeSpecificityComparator.NONE, inferenceComponents) - .chooseMaximallySpecificCandidates(bestCandidates, discriminateGenerics = false) + val reducedCandidates = if (result.currentApplicability < CandidateApplicability.SYNTHETIC_RESOLVED) { + bestCandidates.toSet() + } else { + ConeOverloadConflictResolver(TypeSpecificityComparator.NONE, inferenceComponents) + .chooseMaximallySpecificCandidates(bestCandidates, discriminateGenerics = false) + } // fun isInvoke()