fixup! Add diagnostic for native version
diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/KlibCrossCompilationNativeIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/KlibCrossCompilationNativeIT.kt
index e740010..7eb474a 100644
--- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/KlibCrossCompilationNativeIT.kt
+++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/KlibCrossCompilationNativeIT.kt
@@ -58,7 +58,7 @@
         ) {
             build(":compileKotlinIosArm64") {
                 KotlinTestUtils.assertEqualsToFile(
-                    projectPath.resolve("diagnostics-compileKotlinIosArm64.txt"), extractProjectsAndTheirDiagnostics()
+                    projectPath.resolve("diagnostics-compileKotlinIosArm64.txt"), extractProjectsAndTheirDiagnostics(buildOptions.kotlinVersion, buildOptions.nativeOptions.version)
                 )
                 assertTasksExecuted(":compileKotlinIosArm64")
             }
diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/diagnosticsAssertions.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/diagnosticsAssertions.kt
index d1f7f3b..f7e0af2 100644
--- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/diagnosticsAssertions.kt
+++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/diagnosticsAssertions.kt
@@ -64,75 +64,78 @@
  * [org.jetbrains.kotlin.gradle.plugin.diagnostics.KotlinToolingDiagnostics.InternalKotlinGradlePluginPropertiesUsed].
  * For the sake of clarity, this diagnostic is filtered by default.
  */
-fun BuildResult.extractProjectsAndTheirDiagnostics(): String = buildString {
-    var diagnosticStarted = false
-    var stacktraceStarted = false
-    val currentDiagnostic = mutableListOf<String>()
+fun BuildResult.extractProjectsAndTheirDiagnostics(kotlinVersion: String? = null, kotlinNativeVersion: String? = null): String =
+    buildString {
+        var diagnosticStarted = false
+        var stacktraceStarted = false
+        val currentDiagnostic = mutableListOf<String>()
 
-    fun startDiagnostic(line: String, lineIndex: Int) {
-        require(!diagnosticStarted) {
-            printBuildOutput()
-            "Unexpected start of diagnostic $line on line ${lineIndex + 1}. The end of the previous diagnostic wasn't found yet"
-        }
-
-        currentDiagnostic += line
-        diagnosticStarted = true
-    }
-
-    fun continueDiagnostic(line: String) {
-        when {
-            line == KOTLIN_DIAGNOSTIC_STACKTRACE_START -> {
-                stacktraceStarted = true
-                currentDiagnostic += line
-                currentDiagnostic += DIAGNOSTIC_STACKTRACE_REPLACEMENT_STUB
+        fun startDiagnostic(line: String, lineIndex: Int) {
+            require(!diagnosticStarted) {
+                printBuildOutput()
+                "Unexpected start of diagnostic $line on line ${lineIndex + 1}. The end of the previous diagnostic wasn't found yet"
             }
 
-            line == KOTLIN_DIAGNOSTIC_STACKTRACE_END_SEPARATOR -> {
-                stacktraceStarted = false
-            }
-
-            stacktraceStarted -> return // Omit stacktrace lines for tests stability
-
-            else -> currentDiagnostic += line
-        }
-    }
-
-    fun endDiagnostic(line: String, lineIndex: Int) {
-        require(diagnosticStarted) {
-            printBuildOutput()
-            "Unexpected end of diagnostic $line on line ${lineIndex + 1}"
+            var lineWithPlaceHolders = kotlinVersion?.let { line.replace(it, "<kotlin_version>") } ?: line
+            lineWithPlaceHolders = kotlinNativeVersion?.let { line.replace(it, "<kotlin_native_version>") } ?: lineWithPlaceHolders
+            currentDiagnostic += lineWithPlaceHolders
+            diagnosticStarted = true
         }
 
-        currentDiagnostic += line
+        fun continueDiagnostic(line: String) {
+            when {
+                line == KOTLIN_DIAGNOSTIC_STACKTRACE_START -> {
+                    stacktraceStarted = true
+                    currentDiagnostic += line
+                    currentDiagnostic += DIAGNOSTIC_STACKTRACE_REPLACEMENT_STUB
+                }
 
-        if (KotlinToolingDiagnostics.InternalKotlinGradlePluginPropertiesUsed.id in currentDiagnostic.first()) {
-            val cleanedDiagnostic = filterKgpUtilityPropertiesFromDiagnostic(currentDiagnostic)
-            if (cleanedDiagnostic.isNotEmpty()) appendLine(cleanedDiagnostic.joinToString(separator = "\n", postfix = "\n"))
-        } else {
-            appendLine(currentDiagnostic.joinToString(separator = "\n", postfix = "\n"))
-        }
+                line == KOTLIN_DIAGNOSTIC_STACKTRACE_END_SEPARATOR -> {
+                    stacktraceStarted = false
+                }
 
-        currentDiagnostic.clear()
-        diagnosticStarted = false
-    }
+                stacktraceStarted -> return // Omit stacktrace lines for tests stability
 
-
-    for ((index, line) in output.lines().withIndex()) {
-        when {
-            line.trim() == VERBOSE_DIAGNOSTIC_SEPARATOR -> endDiagnostic(line, index)
-
-            DIAGNOSTIC_START_REGEX.containsMatchIn(line) -> startDiagnostic(line, index)
-
-            diagnosticStarted -> continueDiagnostic(line)
-
-            line.startsWith(CONFIGURE_PROJECT_PREFIX)
-                    || (line.contains(ENSURE_NO_KOTLIN_GRADLE_PLUGIN_ERRORS_TASK_NAME) && line.startsWith(TASK_EXECUTION_PREFIX)) -> {
-                appendLine() // additional empty line between projects
-                appendLine(line)
+                else -> currentDiagnostic += line
             }
         }
-    }
-}.trim()
+
+        fun endDiagnostic(line: String, lineIndex: Int) {
+            require(diagnosticStarted) {
+                printBuildOutput()
+                "Unexpected end of diagnostic $line on line ${lineIndex + 1}"
+            }
+
+            currentDiagnostic += line
+
+            if (KotlinToolingDiagnostics.InternalKotlinGradlePluginPropertiesUsed.id in currentDiagnostic.first()) {
+                val cleanedDiagnostic = filterKgpUtilityPropertiesFromDiagnostic(currentDiagnostic)
+                if (cleanedDiagnostic.isNotEmpty()) appendLine(cleanedDiagnostic.joinToString(separator = "\n", postfix = "\n"))
+            } else {
+                appendLine(currentDiagnostic.joinToString(separator = "\n", postfix = "\n"))
+            }
+
+            currentDiagnostic.clear()
+            diagnosticStarted = false
+        }
+
+
+        for ((index, line) in output.lines().withIndex()) {
+            when {
+                line.trim() == VERBOSE_DIAGNOSTIC_SEPARATOR -> endDiagnostic(line, index)
+
+                DIAGNOSTIC_START_REGEX.containsMatchIn(line) -> startDiagnostic(line, index)
+
+                diagnosticStarted -> continueDiagnostic(line)
+
+                line.startsWith(CONFIGURE_PROJECT_PREFIX)
+                        || (line.contains(ENSURE_NO_KOTLIN_GRADLE_PLUGIN_ERRORS_TASK_NAME) && line.startsWith(TASK_EXECUTION_PREFIX)) -> {
+                    appendLine() // additional empty line between projects
+                    appendLine(line)
+                }
+            }
+        }
+    }.trim()
 
 /**
  * Filters from the report all internal utility-properties that KGP uses in tests.
diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/klibCrossCompilationWithGradlePropertyEnabled/diagnostics-compileKotlinIosArm64.txt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/klibCrossCompilationWithGradlePropertyEnabled/diagnostics-compileKotlinIosArm64.txt
index ee8c200..ebbf192 100644
--- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/klibCrossCompilationWithGradlePropertyEnabled/diagnostics-compileKotlinIosArm64.txt
+++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/klibCrossCompilationWithGradlePropertyEnabled/diagnostics-compileKotlinIosArm64.txt
@@ -1,5 +1,6 @@
 > Configure project :
-w: [OldNativeVersionDiagnostic | WARNING] '2.0.20' Kotlin Native is being used with an newer '2.1.0-RC-212' Kotlin. Please adjust versions to avoid incompatibilities.
+w: [OldNativeVersionDiagnostic | WARNING] '<kotlin_native_version>' Kotlin Native is being used with an newer '<kotlin_version>' Kotlin. Please adjust versions to avoid incompatibilities.
 #diagnostic-end
 
-> Task :checkKotlinGradlePluginConfigurationErrors SKIPPED
+
+> Task :checkKotlinGradlePluginConfigurationErrors SKIPPED
\ No newline at end of file