Skip to content

warn unused regression involving refutability check in for comprehension #10763

Closed
@adriaanm

Description

@adriaanm

Looks like scala/scala#6190 regressed linting for unused stuff a local val captured in a CBN closure is not seen as used:

class Test {
  def timed[T](body: => T) = body

  def run(): Boolean = {
    val grouped = List(("bla","bla"))


    val (_, _) = timed {
      for ((kind, paths) <- grouped) {
        println("")
      }
      (1, 2)
    }
    
    false
  }
}

nok:

➜  Desktop sbt 'set resolvers += "pr-integration" at "https://scala-ci.typesafe.com/artifactory/scala-integration"' 'set scalaVersion := "2.12.5-bin-56918e4"' 'set scalacOptions ++= Seq("-Xfatal-warnings", "-Xlint:unused")' compile
[info] Compiling 1 Scala source to /Users/adriaan/Desktop/target/scala-2.12/classes...
[error] /Users/adriaan/Desktop/unused_captured.scala:5: local val grouped in method run is never used
[error]     val grouped = List(("bla","bla"))
[error]         ^
[error] one error found
[error] (compile:compileIncremental) Compilation failed
[error] Total time: 2 s, completed Mar 8, 2018 11:25:25 AM

ok:

➜  Desktop sbt 'set resolvers += "pr-integration" at "https://scala-ci.typesafe.com/artifactory/scala-integration"' 'set scalaVersion := "2.12.5-bin-f78f517"' 'set scalacOptions ++= Seq("-Xfatal-warnings", "-Xlint:unused")' compile
[info] Compiling 1 Scala source to /Users/adriaan/Desktop/target/scala-2.12/classes...
[success] Total time: 3 s, completed Mar 8, 2018 11:25:49 AM

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions