diff --git a/build-common/src/org/jetbrains/kotlin/incremental/IncrementalCacheCommon.kt b/build-common/src/org/jetbrains/kotlin/incremental/IncrementalCacheCommon.kt index 6d27e6b0869..6ba659a5103 100644 --- a/build-common/src/org/jetbrains/kotlin/incremental/IncrementalCacheCommon.kt +++ b/build-common/src/org/jetbrains/kotlin/incremental/IncrementalCacheCommon.kt @@ -28,7 +28,7 @@ import java.io.File /** * Incremental cache common for JVM and JS */ -open class IncrementalCacheCommon(workingDir: File) : BasicMapsOwner(workingDir) { +abstract class IncrementalCacheCommon(workingDir: File) : BasicMapsOwner(workingDir) { companion object { private val SUBTYPES = "subtypes" private val SUPERTYPES = "supertypes" @@ -55,6 +55,8 @@ open class IncrementalCacheCommon(workingDir: File) : BasicMapsOwner(workingDir) fun getSourceFileIfClass(fqName: FqName): File? = classFqNameToSourceMap[fqName] + abstract fun markDirty(removedAndCompiledSources: List) + protected fun addToClassStorage(proto: ProtoBuf.Class, nameResolver: NameResolver, srcFile: File) { val supertypes = proto.supertypes(TypeTable(proto.typeTable)) val parents = supertypes.map { nameResolver.getClassId(it.className).asSingleFqName() } diff --git a/build-common/src/org/jetbrains/kotlin/incremental/IncrementalCacheImpl.kt b/build-common/src/org/jetbrains/kotlin/incremental/IncrementalCacheImpl.kt index 6d9bec082b0..3cce58ae0d0 100644 --- a/build-common/src/org/jetbrains/kotlin/incremental/IncrementalCacheImpl.kt +++ b/build-common/src/org/jetbrains/kotlin/incremental/IncrementalCacheImpl.kt @@ -80,7 +80,7 @@ open class IncrementalCacheImpl( protected open fun debugLog(message: String) {} - fun markOutputClassesDirty(removedAndCompiledSources: List) { + override fun markDirty(removedAndCompiledSources: List) { for (sourceFile in removedAndCompiledSources) { val classes = sourceToClassesMap[sourceFile] classes.forEach { diff --git a/compiler/incremental-compilation-impl/src/org/jetbrains/kotlin/incremental/IncrementalCompilerRunner.kt b/compiler/incremental-compilation-impl/src/org/jetbrains/kotlin/incremental/IncrementalCompilerRunner.kt index 84d84e6e5e3..b3e7ad57d61 100644 --- a/compiler/incremental-compilation-impl/src/org/jetbrains/kotlin/incremental/IncrementalCompilerRunner.kt +++ b/compiler/incremental-compilation-impl/src/org/jetbrains/kotlin/incremental/IncrementalCompilerRunner.kt @@ -131,7 +131,8 @@ abstract class IncrementalCompilerRunner< } } - protected open fun markOutputDirty(caches: CacheManager, dirtySources: List) { + protected open fun markDirty(caches: CacheManager, dirtySources: List) { + caches.platformCache.markDirty(dirtySources) } protected abstract fun compareAndUpdateCache(caches: CacheManager, generatedFiles: List): CompilationResult @@ -175,7 +176,7 @@ abstract class IncrementalCompilerRunner< val allGeneratedFiles = hashSetOf() while (dirtySources.any()) { - markOutputDirty(caches, dirtySources) + caches.platformCache.markDirty(dirtySources) caches.inputsCache.removeOutputForSourceFiles(dirtySources) val lookupTracker = LookupTrackerImpl(LookupTracker.DO_NOTHING) diff --git a/compiler/incremental-compilation-impl/src/org/jetbrains/kotlin/incremental/IncrementalJvmCompilerRunner.kt b/compiler/incremental-compilation-impl/src/org/jetbrains/kotlin/incremental/IncrementalJvmCompilerRunner.kt index f3db40d5d43..5fd60cd9ec0 100644 --- a/compiler/incremental-compilation-impl/src/org/jetbrains/kotlin/incremental/IncrementalJvmCompilerRunner.kt +++ b/compiler/incremental-compilation-impl/src/org/jetbrains/kotlin/incremental/IncrementalJvmCompilerRunner.kt @@ -196,10 +196,9 @@ class IncrementalJvmCompilerRunner( } private var outdatedClasses: Iterable = emptyList() - override fun markOutputDirty(caches: IncrementalJvmCachesManager, dirtySources: List) { + override fun markDirty(caches: IncrementalJvmCachesManager, dirtySources: List) { outdatedClasses = caches.platformCache.classesBySources(dirtySources) - caches.platformCache.markOutputClassesDirty(dirtySources) - super.markOutputDirty(caches, dirtySources) + super.markDirty(caches, dirtySources) } override fun postCompilationHook(exitCode: ExitCode) {