From f922e454f950e4fa62ec42973d3aebdb712df97c Mon Sep 17 00:00:00 2001 From: Mikhail Zarechenskiy Date: Mon, 1 Jun 2020 09:26:09 +0300 Subject: [PATCH] Don't propagate compatibility resolve from callable reference arguments --- .../resolve/calls/components/CallableReferenceResolver.kt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/compiler/resolution/src/org/jetbrains/kotlin/resolve/calls/components/CallableReferenceResolver.kt b/compiler/resolution/src/org/jetbrains/kotlin/resolve/calls/components/CallableReferenceResolver.kt index 78fae362809..3f465f9b5ea 100644 --- a/compiler/resolution/src/org/jetbrains/kotlin/resolve/calls/components/CallableReferenceResolver.kt +++ b/compiler/resolution/src/org/jetbrains/kotlin/resolve/calls/components/CallableReferenceResolver.kt @@ -23,6 +23,7 @@ import org.jetbrains.kotlin.resolve.calls.inference.ConstraintSystemBuilder import org.jetbrains.kotlin.resolve.calls.inference.ConstraintSystemOperation import org.jetbrains.kotlin.resolve.calls.inference.components.ConstraintInjector import org.jetbrains.kotlin.resolve.calls.inference.components.NewTypeSubstitutor +import org.jetbrains.kotlin.resolve.calls.inference.model.LowerPriorityToPreserveCompatibility import org.jetbrains.kotlin.resolve.calls.model.* import org.jetbrains.kotlin.resolve.calls.results.FlatSignature import org.jetbrains.kotlin.resolve.calls.results.OverloadingConflictResolver @@ -109,6 +110,7 @@ class CallableReferenceResolver( chosenCandidate.diagnostics.forEach { val transformedDiagnostic = when (it) { is CompatibilityWarning -> CompatibilityWarningOnArgument(argument) + is LowerPriorityToPreserveCompatibility -> return@forEach else -> it } diagnosticsHolder.addDiagnostic(transformedDiagnostic)