summaryrefslogtreecommitdiff
path: root/src/reflect/scala/reflect/internal/settings
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2012-08-06 14:09:59 -0700
committerPaul Phillips <paulp@improving.org>2012-08-06 14:09:59 -0700
commit963aabbeb45e042f4b0d6f5ec13edb0136cbf441 (patch)
tree0afe1b93e90088dd35c426c56f559a8116342cfe /src/reflect/scala/reflect/internal/settings
parentb65b7b13924a86d38e04873f9c68d69590dec661 (diff)
downloadscala-963aabbeb45e042f4b0d6f5ec13edb0136cbf441.tar.gz
scala-963aabbeb45e042f4b0d6f5ec13edb0136cbf441.tar.bz2
scala-963aabbeb45e042f4b0d6f5ec13edb0136cbf441.zip
Fix for SI-4945, repl hang on -i input.
Other breakage had accumulated among Settings. I determined that once upon a time, "MultiStringSetting" accepted arguments like this: scala -foo bip bop bar Somewhere this was changed to force a : argument, like scala -foo:bip,bop,bar This incurs breakage. The repl has always advertised its -i option without a colon and it has always been a MultiStringSetting. Forcing everything into the : seemed like the wrong thing, especially because it will stomp on any whitespace containing arguments, whereas in the original form scala -foo bip "bop bar" baz will yield its arguments as given. So lacking any good ideas and knowing something probably depends on each way already, I made it work both ways.
Diffstat (limited to 'src/reflect/scala/reflect/internal/settings')
-rw-r--r--src/reflect/scala/reflect/internal/settings/MutableSettings.scala3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/reflect/scala/reflect/internal/settings/MutableSettings.scala b/src/reflect/scala/reflect/internal/settings/MutableSettings.scala
index e9899f690d..96fd50646f 100644
--- a/src/reflect/scala/reflect/internal/settings/MutableSettings.scala
+++ b/src/reflect/scala/reflect/internal/settings/MutableSettings.scala
@@ -14,6 +14,7 @@ abstract class MutableSettings extends AbsSettings {
type Setting <: SettingValue
type BooleanSetting <: Setting { type T = Boolean }
type IntSetting <: Setting { type T = Int }
+ type MultiStringSetting <: Setting { type T = List[String] }
// basically this is a value which remembers if it's been modified
trait SettingValue extends AbsSettingValue {
@@ -46,4 +47,4 @@ abstract class MutableSettings extends AbsSettings {
def XoldPatmat: BooleanSetting
def XnoPatmatAnalysis: BooleanSetting
def XfullLubs: BooleanSetting
-} \ No newline at end of file
+}