summaryrefslogtreecommitdiff
path: root/src/interactive
diff options
context:
space:
mode:
authorSom Snytt <som.snytt@gmail.com>2014-05-28 18:04:29 -0700
committerSom Snytt <som.snytt@gmail.com>2014-05-29 08:09:37 -0700
commit56e6726c0cabb075b2135ef1a71054aaf7ea6fd0 (patch)
tree911624751ddc4324f147cf8116cc1b1fa0d5d491 /src/interactive
parentc8f8782f6a07d1cc3297f22b1798f8e2d562db88 (diff)
downloadscala-56e6726c0cabb075b2135ef1a71054aaf7ea6fd0.tar.gz
scala-56e6726c0cabb075b2135ef1a71054aaf7ea6fd0.tar.bz2
scala-56e6726c0cabb075b2135ef1a71054aaf7ea6fd0.zip
SI-8503 -version is info setting
And the Scala runner exits with 0 for info settings. Producing the version string is consolidated. The compiler driver uses the default settings hook to short-circuit on -version. That's to avoid creating the compiler; really it should check shouldStopWithInfo first, as the runner does.
Diffstat (limited to 'src/interactive')
-rw-r--r--src/interactive/scala/tools/nsc/interactive/Main.scala7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/interactive/scala/tools/nsc/interactive/Main.scala b/src/interactive/scala/tools/nsc/interactive/Main.scala
index c838606f02..7796c65670 100644
--- a/src/interactive/scala/tools/nsc/interactive/Main.scala
+++ b/src/interactive/scala/tools/nsc/interactive/Main.scala
@@ -12,7 +12,7 @@ package interactive
*/
object Main extends nsc.MainClass {
override def processSettingsHook(): Boolean = {
- if (this.settings.Yidedebug) {
+ def run(): Unit = {
this.settings.Xprintpos.value = true
this.settings.Yrangepos.value = true
val compiler = new interactive.Global(this.settings, this.reporter)
@@ -27,8 +27,9 @@ object Main extends nsc.MainClass {
case None => reporter.reset() // Causes other compiler errors to be ignored
}
askShutdown
- false
}
- else true
+ super.processSettingsHook() && (
+ if (this.settings.Yidedebug) { run() ; false } else true
+ )
}
}