fixup! [IR] Reorder parameters created in `LocalDeclarationsLowering`
diff --git a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/LocalDeclarationsLowering.kt b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/LocalDeclarationsLowering.kt
index d1e728b..a41b2d7 100644
--- a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/LocalDeclarationsLowering.kt
+++ b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/LocalDeclarationsLowering.kt
@@ -792,7 +792,6 @@
                     newDeclaration,
                     type = localFunctionContext.remapType(param.type),
                     varargElementType = param.varargElementType?.let { localFunctionContext.remapType(it) },
-                    kind = if (param.kind == IrParameterKind.ExtensionReceiver) param.kind else IrParameterKind.Regular,
                 ).also {
                     newParameterToOld.putAbsentOrSame(it, param)
                 }
@@ -824,8 +823,12 @@
             }
 
             // For now, we must preserve the parameter kind order since the old API is still in use, and the bridge expects the canonical order.
-            val (extensionReceiver, nonExtensionParameters) = transformedParameters.partition { it.kind == IrParameterKind.ExtensionReceiver }
-            return extensionReceiver + parametersForCapturedValues + nonExtensionParameters
+            val capturedValuesStartIndex = transformedParameters.indexOfFirst { it.kind == IrParameterKind.Regular }
+                .takeIf { it != -1 } ?: transformedParameters.size
+            return buildList {
+                addAll(transformedParameters)
+                addAll(capturedValuesStartIndex, parametersForCapturedValues)
+            }
         }
 
         private fun IrFunction.recordTransformedValueParameters(localContext: LocalContextWithClosureAsParameters) {