diff --git a/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinDirtySourceFilesHolder.kt b/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinDirtySourceFilesHolder.kt index 35846ad9da2..81a6d11c819 100644 --- a/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinDirtySourceFilesHolder.kt +++ b/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinDirtySourceFilesHolder.kt @@ -49,7 +49,14 @@ class KotlinDirtySourceFilesHolder( * and during KotlinDirtySourceFilesHolder initialization. */ internal fun _markDirty(file: File, root: JavaSourceRootDescriptor) { - _dirty[file.canonicalFile] = KotlinModuleBuildTarget.Source(file, root is KotlinIncludedModuleSourceRoot) + val isCrossCompiled = root is KotlinIncludedModuleSourceRoot + val old = _dirty.put(file.canonicalFile, KotlinModuleBuildTarget.Source(file, isCrossCompiled)) + + check(old == null || old.isCrossCompiled == isCrossCompiled) { + "`${file.canonicalFile}` already marked as dirty: " + + "old is cross compiled: ${old!!.isCrossCompiled}, " + + "new is cross compiled: $isCrossCompiled" + } } }