У меня была эта проблема с locally
, поэтому теперь именование ее параметра устарело. Вероятно, println
заслуживает того же обращения.
Теперь, в аргументах arg parens, x = 1
никогда не означает присвоение; для этого вы должны использовать блочный синтаксис.
scala> { var x = 0 ; locally(x = 1) ; x }
^
warning: naming parameter x is deprecated.
res0: Int = 0
scala> { var x = 0 ; println(x = 1) ; x }
1
res1: Int = 0
scala> { var x = 0 ; println { x = 1 } ; x }
()
res2: Int = 1
scala> { var y = 0 ; println(y = 1) ; y }
^
error: unknown parameter name: y
Note that assignments in argument position are no longer allowed since Scala 2.13.
To express the assignment expression, wrap it in brackets, e.g., `{ y = ... }`.