scala / bug

Scala 2 bug reports only. Please, no questions — proper bug reports only.
https://scala-lang.org
232 stars 21 forks source link

REPL doesn't report op= mutations #12894

Closed som-snytt closed 3 months ago

som-snytt commented 11 months ago

Reproduction steps

Scala version: 2.13

scala 2.13.12> var x = 42
var x: Int = 42

scala 2.13.12> x = 17
// mutated x

scala 2.13.12> x += 10

scala 2.13.12> x
val res1: Int = 27

Problem

It should say that x was mutated by assignment +=.

SethTisue commented 8 months ago

This would be a good little starter project for somebody, either in Scala 2 or Scala 3 or both.

In Scala 3 (3.4.0-RC3), instead of "mutated x" it actually shows the new value, which seems like a better design:

scala> var x = 42
var x: Int = 42

scala> x = 20
x: Int = 20

But Scala 3 also fails to handle += and friends the same way it handles plain assignment

scala> x += 10

scala>