- Notifications
You must be signed in to change notification settings - Fork 1.1k
Description
Compiler version
3.4.0-RC1-bin-SNAPSHOT-git-3b974c5
Minimized code
Welcome to Scala 3.4.0-RC1-bin-SNAPSHOT-git-3b974c5 (21, Java OpenJDK 64-Bit Server VM). Type in expressions for evaluation. Or try :help. scala> def f(@deprecatedName x: Int) = x*2 def f(x: Int): Int scala> f(x=21) val res0: Int = 42 scala> def f(@deprecatedName("y") x: Int) = x*2 def f(x: Int): Int scala> f(y=21) -- Error: -------------------------------------------------------------------------------------------------------------- 1 |f(y=21) | ^^^^ | method f: (x: Int): Int does not have a parameter y 1 error found
Expectation
Welcome to Scala 2.13.12 (OpenJDK 64-Bit Server VM, Java 21). Type in expressions for evaluation. Or try :help. scala> def f(@deprecatedName x: Int) = x*2 def f(x: Int): Int scala> f(x=21) ^ warning: naming parameter x is deprecated. val res0: Int = 42 scala> def f(@deprecatedName("y") x: Int) = x*2 def f(x: Int): Int scala> f(y=21) ^ warning: the parameter name y is deprecated: use x instead val res1: Int = 42
Perhaps Dotty hasn't been around long enough for anyone to change a parameter name.
This means it doesn't respect
scala> locally(x = 42) ^ warning: naming parameter x is deprecated. val res0: Int = 42
He-Pin and lrytz