diff options
author | Josh Suereth <Joshua.Suereth@gmail.com> | 2012-10-31 08:07:18 -0700 |
---|---|---|
committer | Josh Suereth <Joshua.Suereth@gmail.com> | 2012-10-31 08:07:18 -0700 |
commit | d3f2d6da5da059a7d7566a073a55264ae933b857 (patch) | |
tree | 7bf9315fefbae38be990cd788fc054c2223b3383 | |
parent | 34d021ad2021d3dbedc8b6fe20f7f0f6d1569757 (diff) | |
parent | 492cbe5eec2df5d3e3a4310cf0fda5b86855299f (diff) | |
download | scala-d3f2d6da5da059a7d7566a073a55264ae933b857.tar.gz scala-d3f2d6da5da059a7d7566a073a55264ae933b857.tar.bz2 scala-d3f2d6da5da059a7d7566a073a55264ae933b857.zip |
Merge pull request #1537 from jsuereth/fix/SI-6559-2.10.x
Fixes SI-6559 - StringContext not using passed in escape function.
-rw-r--r-- | src/library/scala/StringContext.scala | 2 | ||||
-rw-r--r-- | test/files/run/t6559.scala | 17 |
2 files changed, 18 insertions, 1 deletions
diff --git a/src/library/scala/StringContext.scala b/src/library/scala/StringContext.scala index fb43d56020..4078168bb3 100644 --- a/src/library/scala/StringContext.scala +++ b/src/library/scala/StringContext.scala @@ -120,7 +120,7 @@ case class StringContext(parts: String*) { val bldr = new java.lang.StringBuilder(process(pi.next())) while (ai.hasNext) { bldr append ai.next - bldr append treatEscapes(pi.next()) + bldr append process(pi.next()) } bldr.toString } diff --git a/test/files/run/t6559.scala b/test/files/run/t6559.scala new file mode 100644 index 0000000000..5c671f7275 --- /dev/null +++ b/test/files/run/t6559.scala @@ -0,0 +1,17 @@ + +object Test { + + def main(args: Array[String]) = { + val one = "1" + val two = "2" + + val raw = raw"\n$one\n$two\n" + val escaped = s"\n$one\n$two\n" + val buggy = "\\n1\n2\n" + val correct = "\\n1\\n2\\n" + + assert(raw != escaped, "Raw strings should not be escaped.") + assert(raw != buggy, "Raw strings after variables should not be escaped.") + assert(raw == correct, "Raw strings should stay raw.") + } +} |