diff options
author | Eugene Burmako <burmako@epfl.ch> | 2011-11-28 13:37:52 +0000 |
---|---|---|
committer | Eugene Burmako <burmako@epfl.ch> | 2011-11-28 13:37:52 +0000 |
commit | 4e987a3cf032eb176c20bf3fd5ac847a73b19c00 (patch) | |
tree | 41b2cc06372010f9d30a671d46bf504aa3f9bc05 /src/compiler/scala/reflect/runtime/ToolBoxes.scala | |
parent | 66bf8db3f115675377d82869fddcab6006adf04d (diff) | |
download | scala-4e987a3cf032eb176c20bf3fd5ac847a73b19c00.tar.gz scala-4e987a3cf032eb176c20bf3fd5ac847a73b19c00.tar.bz2 scala-4e987a3cf032eb176c20bf3fd5ac847a73b19c00.zip |
Reflection toolboxes now respect settings that ...
Reflection toolboxes now respect settings that are provided to them.
Before the fix CompilerCommand lacked the (args, settings, errorFn)
ctor. I added it and provided means to augment passed settings with
custom errorFn.
Closes SI-5239. Review by odersky.
Diffstat (limited to 'src/compiler/scala/reflect/runtime/ToolBoxes.scala')
-rw-r--r-- | src/compiler/scala/reflect/runtime/ToolBoxes.scala | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/compiler/scala/reflect/runtime/ToolBoxes.scala b/src/compiler/scala/reflect/runtime/ToolBoxes.scala index 7ec7d15fb7..e617239398 100644 --- a/src/compiler/scala/reflect/runtime/ToolBoxes.scala +++ b/src/compiler/scala/reflect/runtime/ToolBoxes.scala @@ -3,6 +3,7 @@ package runtime import scala.tools.nsc.reporters.Reporter import scala.tools.nsc.reporters.StoreReporter +import scala.tools.nsc.reporters.AbstractReporter import scala.tools.nsc.ReflectGlobal import scala.tools.nsc.CompilerCommand import scala.tools.nsc.Global @@ -109,7 +110,12 @@ trait ToolBoxes extends { self: Universe => } lazy val compiler: ToolBoxGlobal = { - val command = new CompilerCommand(arguments.toList, reporter.error(scala.tools.nsc.util.NoPosition, _)) + val errorFn: String => Unit = reporter.error(scala.tools.nsc.util.NoPosition, _) + val command = reporter match { + case reporter: AbstractReporter => new CompilerCommand(arguments.toList, reporter.settings, errorFn) + case _ => new CompilerCommand(arguments.toList, errorFn) + } + command.settings.outputDirs setSingleOutput virtualDirectory new ToolBoxGlobal(command.settings, reporter) } |