From 35abf29456a7b5b6fa7f114917990cb228e66be9 Mon Sep 17 00:00:00 2001 From: Guillaume Martres Date: Thu, 2 Jun 2016 18:08:33 +0200 Subject: [PATCH] Properly report errors when cli flags are malformed Previously we returned an empty Reporter with no errors so partest reported the test as a success. --- src/dotty/tools/dotc/Driver.scala | 2 +- test/dotc/tests.scala | 3 +++ tests/neg/customArgs/cliError.scala | 2 ++ 3 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 tests/neg/customArgs/cliError.scala diff --git a/src/dotty/tools/dotc/Driver.scala b/src/dotty/tools/dotc/Driver.scala index 2e78854c1405..f54a23ad2451 100644 --- a/src/dotty/tools/dotc/Driver.scala +++ b/src/dotty/tools/dotc/Driver.scala @@ -31,7 +31,7 @@ abstract class Driver extends DotClass { ctx.error(ex.getMessage) // signals that we should fail compilation. ctx.reporter } - else emptyReporter + else ctx.reporter protected def initCtx = (new ContextBase).initialCtx diff --git a/test/dotc/tests.scala b/test/dotc/tests.scala index d43c5059b9b2..bac443735470 100644 --- a/test/dotc/tests.scala +++ b/test/dotc/tests.scala @@ -119,6 +119,9 @@ class tests extends CompilerTest { @Test def neg_typedIdents() = compileDir(negDir, "typedIdents") val negCustomArgs = negDir + "customArgs/" + + @Test def neg_cli_error = compileFile(negCustomArgs, "cliError", List("-thisOptionDoesNotExist")) + @Test def neg_typers() = compileFile(negCustomArgs, "typers")(allowDoubleBindings) @Test def neg_overrideClass = compileFile(negCustomArgs, "overrideClass", scala2mode) @Test def neg_autoTupling = compileFile(negCustomArgs, "autoTuplingTest", args = "-language:noAutoTupling" :: Nil) diff --git a/tests/neg/customArgs/cliError.scala b/tests/neg/customArgs/cliError.scala new file mode 100644 index 000000000000..b2f0f6cdc4af --- /dev/null +++ b/tests/neg/customArgs/cliError.scala @@ -0,0 +1,2 @@ +// nopos-error +object Test