diff options
author | Paul Phillips <paulp@improving.org> | 2011-12-04 15:00:02 -0800 |
---|---|---|
committer | Paul Phillips <paulp@improving.org> | 2011-12-04 15:32:41 -0800 |
commit | da35106f81a5c24e78ff51c95e10052ad4f23b18 (patch) | |
tree | 1c1dcd930a037ceb15bbb9a2f3a556abbaa0c549 /src/continuations | |
parent | 86cbfd074112be2b7600cf2565d5228a3106d33d (diff) | |
download | scala-da35106f81a5c24e78ff51c95e10052ad4f23b18.tar.gz scala-da35106f81a5c24e78ff51c95e10052ad4f23b18.tar.bz2 scala-da35106f81a5c24e78ff51c95e10052ad4f23b18.zip |
Enabled continuations plugin by default.
We're not buying anything with it off by default. Added a
-P:continuations:disable option to disable. -P:continuations:enable
lives on as a no-op. Review by @odersky.
Diffstat (limited to 'src/continuations')
-rw-r--r-- | src/continuations/plugin/scala/tools/selectivecps/CPSUtils.scala | 2 | ||||
-rw-r--r-- | src/continuations/plugin/scala/tools/selectivecps/SelectiveCPSPlugin.scala | 19 |
2 files changed, 9 insertions, 12 deletions
diff --git a/src/continuations/plugin/scala/tools/selectivecps/CPSUtils.scala b/src/continuations/plugin/scala/tools/selectivecps/CPSUtils.scala index 5cb06d42db..f4481b800e 100644 --- a/src/continuations/plugin/scala/tools/selectivecps/CPSUtils.scala +++ b/src/continuations/plugin/scala/tools/selectivecps/CPSUtils.scala @@ -9,7 +9,7 @@ trait CPSUtils { import global._ import definitions._ - var cpsEnabled = false + var cpsEnabled = true val verbose: Boolean = System.getProperty("cpsVerbose", "false") == "true" def vprintln(x: =>Any): Unit = if (verbose) println(x) diff --git a/src/continuations/plugin/scala/tools/selectivecps/SelectiveCPSPlugin.scala b/src/continuations/plugin/scala/tools/selectivecps/SelectiveCPSPlugin.scala index 8a500d6c4d..eb18f03748 100644 --- a/src/continuations/plugin/scala/tools/selectivecps/SelectiveCPSPlugin.scala +++ b/src/continuations/plugin/scala/tools/selectivecps/SelectiveCPSPlugin.scala @@ -26,7 +26,6 @@ class SelectiveCPSPlugin(val global: Global) extends Plugin { override val runsBefore = List("uncurry") } - val components = List[PluginComponent](anfPhase, cpsPhase) val checker = new CPSAnnotationChecker { @@ -43,19 +42,17 @@ class SelectiveCPSPlugin(val global: Global) extends Plugin { } // TODO: require -enabled command-line flag - override def processOptions(options: List[String], error: String => Unit) = { - var enabled = false - for (option <- options) { - if (option == "enable") { - enabled = true - } else { - error("Option not understood: "+option) - } + var enabled = true + options foreach { + case "enable" => enabled = true + case "disable" => enabled = false + case option => error("Option not understood: "+option) } setEnabled(enabled) } - override val optionsHelp: Option[String] = - Some(" -P:continuations:enable Enable continuations") + override val optionsHelp: Option[String] = { + Some(" -P:continuations:disable Disable continuations plugin") + } } |