Skip to content

Commit 8b2faa5

Browse files
committed
Show broken source file errors
1 parent a61fec5 commit 8b2faa5

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

compiler/test/dotty/tools/vulpix/ParallelTesting.scala

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ import dotc.interfaces.Diagnostic.ERROR
2727
import dotc.reporting.{Reporter, TestReporter}
2828
import dotc.reporting.Diagnostic
2929
import dotc.config.Config
30-
import dotc.util.{DiffUtil, SourceFile, SourcePosition, Spans}
30+
import dotc.util.{DiffUtil, SourceFile, SourcePosition, Spans, NoSourcePosition}
3131
import io.AbstractFile
3232
import dotty.tools.vulpix.TestConfiguration.defaultOptions
3333

@@ -506,6 +506,7 @@ trait ParallelTesting extends RunnerOrchestration { self =>
506506

507507
private def parseErrors(errorsText: String, compilerVersion: String, pageWidth: Int) =
508508
val errorPattern = """^.*Error: (.*\.scala):(\d+):(\d+).*""".r
509+
val brokenClassPattern = """^class file (.*) is broken.*""".r
509510
val warnPattern = """^.*Warning: (.*\.scala):(\d+):(\d+).*""".r
510511
val summaryPattern = """\d+ (?:warning|error)s? found""".r
511512
val indent = " "
@@ -534,6 +535,9 @@ trait ParallelTesting extends RunnerOrchestration { self =>
534535
val sourcePos = SourcePosition(sourceFile, span)
535536
addToLast(barLine(start = false))
536537
diagnostics ::= Diagnostic.Error(s"Compilation of $filePath with Scala $compilerVersion failed at line: $line, column: $column.\nFull error output:\n${barLine(start = true)}${errorLine(error)}", sourcePos)
538+
case error @ brokenClassPattern(filePath) =>
539+
inError = true
540+
diagnostics ::= Diagnostic.Error(s"$error\nFull error output:\n${barLine(start = true)}${errorLine(error)}", NoSourcePosition)
537541
case summaryPattern() => // Ignored
538542
case line if inError => addToLast(errorLine(line))
539543
case _ =>

0 commit comments

Comments
 (0)