From c4a29651b01232819a9522df78d12907565256f9 Mon Sep 17 00:00:00 2001 From: Ilya Chernikov Date: Tue, 8 Mar 2022 14:25:17 +0100 Subject: [PATCH] FIR IC: fix test with behavior different from non-tight cycle variants --- .../testingUtils/BuildLogFinder.kt | 3 ++ ...ntalFirICLightTreeJvmCompilerRunnerTest.kt | 2 +- .../fir-ic-build.log | 33 +++++++++++++++++++ 3 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 jps/jps-plugin/testData/incremental/classHierarchyAffected/secondaryConstructorAdded/fir-ic-build.log diff --git a/build-common/test/org/jetbrains/kotlin/incremental/testingUtils/BuildLogFinder.kt b/build-common/test/org/jetbrains/kotlin/incremental/testingUtils/BuildLogFinder.kt index d1ad0a5f2eb..a9a6d2e7d82 100644 --- a/build-common/test/org/jetbrains/kotlin/incremental/testingUtils/BuildLogFinder.kt +++ b/build-common/test/org/jetbrains/kotlin/incremental/testingUtils/BuildLogFinder.kt @@ -25,6 +25,7 @@ data class BuildLogFinder( private val isScopeExpansionEnabled: Boolean = false, private val isKlibEnabled: Boolean = false, private val isFirEnabled: Boolean = false, + private val isFirIcEnabled: Boolean = false, private val isJpsBuild: Boolean = false, ) { companion object { @@ -34,6 +35,7 @@ data class BuildLogFinder( private const val GRADLE_LOG = "gradle-build.log" private const val DATA_CONTAINER_LOG = "data-container-version-build.log" const val JS_JPS_LOG = "js-jps-build.log" + private const val FIR_IC_LOG = "fir-ic-build.log" private const val FIR_LOG = "fir-build.log" private const val GRADLE_FIR_LOG = "gradle-fir-build.log" const val JPS_LOG = "jps-build.log" @@ -51,6 +53,7 @@ data class BuildLogFinder( isScopeExpansionEnabled && SCOPE_EXPANDING_LOG in files -> SCOPE_EXPANDING_LOG isKlibEnabled && KLIB_LOG in files -> KLIB_LOG isJsEnabled && JS_LOG in files -> JS_LOG + isFirIcEnabled && FIR_IC_LOG in files -> FIR_IC_LOG isGradleEnabled && isFirEnabled && GRADLE_FIR_LOG in files -> GRADLE_FIR_LOG isFirEnabled && FIR_LOG in files -> FIR_LOG isGradleEnabled && GRADLE_LOG in files -> GRADLE_LOG diff --git a/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/AbstractIncrementalFirICLightTreeJvmCompilerRunnerTest.kt b/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/AbstractIncrementalFirICLightTreeJvmCompilerRunnerTest.kt index ec11df57891..edd8a36c009 100644 --- a/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/AbstractIncrementalFirICLightTreeJvmCompilerRunnerTest.kt +++ b/compiler/incremental-compilation-impl/test/org/jetbrains/kotlin/incremental/AbstractIncrementalFirICLightTreeJvmCompilerRunnerTest.kt @@ -19,5 +19,5 @@ abstract class AbstractIncrementalFirICLightTreeJvmCompilerRunnerTest : Abstract } override val buildLogFinder: BuildLogFinder - get() = BuildLogFinder(isGradleEnabled = true, isFirEnabled = true) // TODO: investigate cases that need isGradleEnabled - the combination looks fragile + get() = BuildLogFinder(isGradleEnabled = true, isFirEnabled = true, isFirIcEnabled = true) // TODO: investigate cases that need isGradleEnabled - the combination looks fragile } diff --git a/jps/jps-plugin/testData/incremental/classHierarchyAffected/secondaryConstructorAdded/fir-ic-build.log b/jps/jps-plugin/testData/incremental/classHierarchyAffected/secondaryConstructorAdded/fir-ic-build.log new file mode 100644 index 00000000000..87cfda8c07f --- /dev/null +++ b/jps/jps-plugin/testData/incremental/classHierarchyAffected/secondaryConstructorAdded/fir-ic-build.log @@ -0,0 +1,33 @@ +================ Step #1 ================= + +Cleaning output files: + out/production/module/A.class + out/production/module/META-INF/module.kotlin_module +End of files +Compiling files: + src/A.kt +End of files +Exit code: ABORT +------------------------------------------ +COMPILATION FAILED +Conflicting overloads: [public final fun A(x: R|kotlin/String|): R|A| +] + +================ Step #2 ================= + +Cleaning output files: + out/production/module/AConstructorFunctionKt.class +End of files +Cleaning output files: + out/production/module/CreateAFromStringKt.class +End of files +Compiling files: + src/A.kt + src/AChild.kt + src/AConstructorFunction.kt + src/createAFromInt.kt + src/createAFromString.kt + src/useA.kt +End of files +Exit code: OK +------------------------------------------ \ No newline at end of file