diff options
author | Aleksandar Pokopec <aleksandar.prokopec@epfl.ch> | 2010-02-23 18:57:52 +0000 |
---|---|---|
committer | Aleksandar Pokopec <aleksandar.prokopec@epfl.ch> | 2010-02-23 18:57:52 +0000 |
commit | de56fa0693b65a17aee95dda06eb7b1b42239fd8 (patch) | |
tree | d413a438c80a3d1ba59917fd94ed827cf18098ed | |
parent | 39c117a822250e5939779d86a61f75727113b8ed (diff) | |
download | scala-de56fa0693b65a17aee95dda06eb7b1b42239fd8.tar.gz scala-de56fa0693b65a17aee95dda06eb7b1b42239fd8.tar.bz2 scala-de56fa0693b65a17aee95dda06eb7b1b42239fd8.zip |
Fixes #3018. Review by extempore.
-rw-r--r-- | src/library/scala/runtime/ScalaRunTime.scala | 4 |
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) |