diff --git a/compiler/src/dotty/tools/repl/ReplDriver.scala b/compiler/src/dotty/tools/repl/ReplDriver.scala index 1b12fe3ff2bc..fb602c1bbb67 100644 --- a/compiler/src/dotty/tools/repl/ReplDriver.scala +++ b/compiler/src/dotty/tools/repl/ReplDriver.scala @@ -235,6 +235,9 @@ class ReplDriver(settings: Array[String], val newImports = newState.imports ++ extractImports(parsed.trees) val newStateWithImports = newState.copy(imports = newImports) + // display warnings + displayErrors(newState.run.runContext.flushBufferedMessages())(newState) + displayDefinitions(unit.tpdTree, newestWrapper)(newStateWithImports) } } diff --git a/compiler/test-resources/repl/i4217 b/compiler/test-resources/repl/i4217 new file mode 100644 index 000000000000..22964adaf6a7 --- /dev/null +++ b/compiler/test-resources/repl/i4217 @@ -0,0 +1,7 @@ +scala> def foo(x: Option[Int]) = x match { case None => } +1 | def foo(x: Option[Int]) = x match { case None => } + | ^ + | match may not be exhaustive. + | + | It would fail on pattern case: Some(_) +def foo(x: Option[Int]): Unit \ No newline at end of file