summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAleksandar Pokopec <aleksandar.prokopec@epfl.ch>2010-02-23 18:57:52 +0000
committerAleksandar Pokopec <aleksandar.prokopec@epfl.ch>2010-02-23 18:57:52 +0000
commitde56fa0693b65a17aee95dda06eb7b1b42239fd8 (patch)
treed413a438c80a3d1ba59917fd94ed827cf18098ed /src
parent39c117a822250e5939779d86a61f75727113b8ed (diff)
downloadscala-de56fa0693b65a17aee95dda06eb7b1b42239fd8.tar.gz
scala-de56fa0693b65a17aee95dda06eb7b1b42239fd8.tar.bz2
scala-de56fa0693b65a17aee95dda06eb7b1b42239fd8.zip
Fixes #3018. Review by extempore.
Diffstat (limited to 'src')
-rw-r--r--src/library/scala/runtime/ScalaRunTime.scala4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/library/scala/runtime/ScalaRunTime.scala b/src/library/scala/runtime/ScalaRunTime.scala
index a26d6b09bd..9a61f38be2 100644
--- a/src/library/scala/runtime/ScalaRunTime.scala
+++ b/src/library/scala/runtime/ScalaRunTime.scala
@@ -193,11 +193,13 @@ object ScalaRunTime {
// Node extends NodeSeq extends Seq[Node] strikes again
case x: Node => x toString
case x: AnyRef if isArray(x) => WrappedArray make x map inner mkString ("Array(", ", ", ")")
+ case x: Traversable[_] if !x.hasDefiniteSize => x.toString
case x: Traversable[_] =>
// Some subclasses of AbstractFile implement Iterable, then throw an
// exception if you call iterator. What a world.
+ // And they can't be infinite either.
if (x.getClass.getName startsWith "scala.tools.nsc.io") x.toString
- else x map inner mkString (x.stringPrefix + "(", ", ", ")")
+ else (x map inner) mkString (x.stringPrefix + "(", ", ", ")")
case x => x toString
}
val s = inner(arg)