Skip to content

s String interpolator takes backslash literally when used with by-name parameter #11196

@eed3si9n

Description

@eed3si9n

This was originally reported to sbt as "sbt logger does super weird stuff with string context without interpolation" - sbt/sbt#4371

steps

package foo

object Test extends App {
  def strict(s: String): Unit = println("strict: " + s)
  def byName(s: => String): Unit = println("by name: " + s)

  strict(s"\tdo homework")
  byName(s"\tdo homework")
}

problem

From sbt:

> ++2.12.5!
> run
[info] Running foo.Test
strict: 	do homework
by name: \tdo homework

expectation

> ++2.12.4!
> run
[info] Running foo.Test
strict: 	do homework
by name: 	do homework

notes

Ref scala/scala#6093

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions