~~ Attempt to fix Gradle trouble
diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/calls/overloads/ConeOverloadConflictResolver.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/calls/overloads/ConeOverloadConflictResolver.kt
index ff565e8..e6fbbbe 100644
--- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/calls/overloads/ConeOverloadConflictResolver.kt
+++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/calls/overloads/ConeOverloadConflictResolver.kt
@@ -191,14 +191,6 @@
         candidates: Set<Candidate>,
         discriminationFlags: DiscriminationFlags
     ): Set<Candidate> {
-        if (discriminationFlags.lowPrioritySAMs) {
-            filterCandidatesByDiscriminationFlag(
-                candidates,
-                { !it.shouldHaveLowPriorityDueToSAM(transformerComponents) },
-                { discriminationFlags.copy(lowPrioritySAMs = false) },
-            )?.let { return it }
-        }
-
         if (discriminationFlags.adaptationsInPostponedAtoms) {
             filterCandidatesByDiscriminationFlag(
                 candidates,
@@ -209,6 +201,14 @@
 
         findMaximallySpecificCall(candidates, false)?.let { return setOf(it) }
 
+        if (discriminationFlags.lowPrioritySAMs) {
+            filterCandidatesByDiscriminationFlag(
+                candidates,
+                { !it.shouldHaveLowPriorityDueToSAM(transformerComponents) },
+                { discriminationFlags.copy(lowPrioritySAMs = false) },
+            )?.let { return it }
+        }
+
         if (discriminationFlags.generics) {
             findMaximallySpecificCall(candidates, true)?.let { return setOf(it) }
         }
diff --git a/compiler/testData/diagnostics/tests/j+k/sam/compatibilityResolveToOuterScopeForKotlinFunctions.fir.kt b/compiler/testData/diagnostics/tests/j+k/sam/compatibilityResolveToOuterScopeForKotlinFunctions.fir.kt
index 2894f01..1932980 100644
--- a/compiler/testData/diagnostics/tests/j+k/sam/compatibilityResolveToOuterScopeForKotlinFunctions.fir.kt
+++ b/compiler/testData/diagnostics/tests/j+k/sam/compatibilityResolveToOuterScopeForKotlinFunctions.fir.kt
@@ -42,7 +42,7 @@
 
     fun test(f: () -> Unit) {
         val result = foo(1, f)
-        <!DEBUG_INFO_EXPRESSION_TYPE("kotlin.String")!>result<!>
+        <!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Int")!>result<!>
     }
 }
 
@@ -54,7 +54,7 @@
 
     fun test() {
         val result = foo(1, ::bar)
-        <!DEBUG_INFO_EXPRESSION_TYPE("kotlin.String")!>result<!>
+        <!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Int")!>result<!>
     }
 }
 
diff --git a/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGenericCompatibilityDisabled.fir.kt b/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGeneric.fir.kt
similarity index 74%
rename from compiler/testData/diagnostics/tests/samConversions/samPriorityVsGenericCompatibilityDisabled.fir.kt
rename to compiler/testData/diagnostics/tests/samConversions/samPriorityVsGeneric.fir.kt
index 899d1b4..4995524 100644
--- a/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGenericCompatibilityDisabled.fir.kt
+++ b/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGeneric.fir.kt
@@ -1,5 +1,4 @@
-// RUN_PIPELINE_TILL: BACKEND
-// LANGUAGE: +DisableCompatibilityModeForNewInference
+// RUN_PIPELINE_TILL: FRONTEND
 // SKIP_TXT
 // FULL_JDK
 
@@ -10,5 +9,5 @@
 
 fun main() {
     val x = bar() { foo() } // OK with default current 1.5/1.6, Error with DisableCompatibilityModeForNewInference enabled, Ok in K2
-    x.length
+    x.<!UNRESOLVED_REFERENCE!>length<!>
 }
diff --git a/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGeneric.kt b/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGeneric.kt
index 390c36b..137d5ab 100644
--- a/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGeneric.kt
+++ b/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGeneric.kt
@@ -1,5 +1,4 @@
-// RUN_PIPELINE_TILL: BACKEND
-// FIR_IDENTICAL
+// RUN_PIPELINE_TILL: FRONTEND
 // SKIP_TXT
 // FULL_JDK
 
diff --git a/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGenericCompatibilityDisabled.kt b/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGenericCompatibilityDisabled.kt
index 6ed2021..ceb1bc8 100644
--- a/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGenericCompatibilityDisabled.kt
+++ b/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGenericCompatibilityDisabled.kt
@@ -1,4 +1,5 @@
-// RUN_PIPELINE_TILL: BACKEND
+// FIR_IDENTICAL
+// RUN_PIPELINE_TILL: FRONTEND
 // LANGUAGE: +DisableCompatibilityModeForNewInference
 // SKIP_TXT
 // FULL_JDK
diff --git a/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGenericCompatibilityEnabled2.fir.kt b/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGenericCompatibilityEnabled2.fir.kt
deleted file mode 100644
index 8bfab14..0000000
--- a/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGenericCompatibilityEnabled2.fir.kt
+++ /dev/null
@@ -1,23 +0,0 @@
-// RUN_PIPELINE_TILL: FRONTEND
-// LANGUAGE: +DisableCompatibilityModeForNewInference
-// FULL_JDK
-
-import java.util.function.Consumer
-
-class Exec
-
-fun <T> register(vararg constructorArgs: Any): String = "1" // (1)
-fun <T> register(configurationAction: Consumer<in T>): Int = 2 // (2)
-
-fun withConversion(): (Exec) -> Unit = {}
-fun withoutConversion() = Consumer<Exec> {}
-
-fun main() {
-    val x = register<Exec>(withConversion()) // K2 -> (1)
-    acceptInt(<!ARGUMENT_TYPE_MISMATCH!>x<!>)
-
-    val y = register<Exec>(withoutConversion()) // K2 -> (2)
-    acceptInt(y)
-}
-
-fun acceptInt(i: Int) {}
diff --git a/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGenericCompatibilityEnabled2.kt b/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGenericCompatibilityEnabled2.kt
index 0898809..03dc6b3 100644
--- a/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGenericCompatibilityEnabled2.kt
+++ b/compiler/testData/diagnostics/tests/samConversions/samPriorityVsGenericCompatibilityEnabled2.kt
@@ -1,4 +1,5 @@
-// RUN_PIPELINE_TILL: FRONTEND
+// FIR_IDENTICAL
+// RUN_PIPELINE_TILL: BACKEND
 // LANGUAGE: +DisableCompatibilityModeForNewInference
 // FULL_JDK