Skip to content

Commit 7aa9757

Browse files
author
Aleksei.Cherepanov
committed
[JPS] Register files with errors in JPS graph
This is needed for JPS graph to expand compilation scope correctly in case of user errors (cherry picked from commit 3ec8176)
1 parent e2b8ad6 commit 7aa9757

File tree

2 files changed

+5
-0
lines changed

2 files changed

+5
-0
lines changed

jps/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt

+1
Original file line numberDiff line numberDiff line change
@@ -470,6 +470,7 @@ class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR) {
470470
val compilationErrors = Utils.ERRORS_DETECTED_KEY[context, false]
471471
if (compilationErrors) {
472472
LOG.info("Compiled with errors")
473+
JavaBuilderUtil.registerFilesWithErrors(context, messageCollector.filesWithErrors.map(::File))
473474
return ABORT
474475
} else {
475476
JavaBuilderUtil.registerSuccessfullyCompiled(context, kotlinDirtyFilesHolder.allDirtyFiles)

jps/jps-plugin/src/org/jetbrains/kotlin/jps/build/MessageCollectorAdapter.kt

+4
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ class MessageCollectorAdapter(
2121
private val kotlinTarget: KotlinModuleBuildTarget<*>?
2222
) : MessageCollector {
2323
private var hasErrors = false
24+
val filesWithErrors = mutableSetOf<String>()
2425

2526
override fun report(severity: CompilerMessageSeverity, @Nls message: String, location: CompilerMessageSourceLocation?) {
2627
hasErrors = hasErrors || severity.isError
@@ -37,6 +38,9 @@ class MessageCollectorAdapter(
3738
val moduleName = kotlinTarget.module.name
3839
prefix += "[$moduleName] "
3940
}
41+
if(severity.isError) {
42+
location?.let { filesWithErrors.add(it.path) }
43+
}
4044

4145
context.processMessage(
4246
CompilerMessage(

0 commit comments

Comments
 (0)