警告scala 2.11中的名称阴影

警告scala 2.11中的名称阴影,scala,compiler-warnings,compiler-flags,Scala,Compiler Warnings,Compiler Flags,我正在使用SBT构建一个项目,在我的build.scala中有: scalacOptions ++= Seq("-unchecked", "-deprecation", "-feature", "-Xfatal-warnings") 如何配置项目以警告名称/变量阴影?我已经浏览了源代码,但在众多选项中没有看到我在寻找什么。上的注释提到一个似乎不存在的标记-Ywarn shadowing。如A所示,您可以使用-X开始探索。然后我尝试了-Xlint:help,这会产生一些阴影设置: 信息:scal

我正在使用SBT构建一个项目,在我的
build.scala中有:

scalacOptions ++= Seq("-unchecked", "-deprecation", "-feature", "-Xfatal-warnings")
如何配置项目以警告名称/变量阴影?我已经浏览了源代码,但在众多选项中没有看到我在寻找什么。上的注释提到一个似乎不存在的标记
-Ywarn shadowing

如A所示,您可以使用
-X
开始探索。然后我尝试了
-Xlint:help
,这会产生一些阴影设置:

信息:scalac:启用或禁用特定警告
如果修改参数列表以匹配,则自适应参数将发出警告
接受者。
空单元在空方法返回单元时发出警告。
不可访问警告方法签名中的不可访问类型。
当非空'def()'覆盖空值时,空值覆盖警告
`定义f'。
当类型参数被推断为“any”时,推断任何警告。
缺少插值器字符串文字似乎缺少
内插器id。
doc detached ScalaDoc注释似乎已从其
元素。
私有阴影私有字段(或类参数)阴影
超类字段。
类型参数阴影本地类型参数阴影中已存在的类型
范围
不支持多隐式重载参数化重载隐式方法
作为视图边界可见。
option implicit option.apply已使用隐式视图。
delayedinit选择delayedinit的选择成员。
按名称右关联按名称右关联运算符的参数。
包对象类在包对象中定义的类或对象。
不可靠的匹配模式匹配可能不是类型安全的。
星号对齐图案序列通配符必须与序列对齐
组成部分。

可能
-Xlint:private shadow
就是您想要的?

有很多scala linter工具。具有用于
可变阴影的选项。我在更流行的linter中没有看到阴影选项,但是您可以自己实现一个。

谢谢,这很有帮助,但是我正在寻找变量的阴影,例如嵌套范围中的
val
,或者
val
阴影函数或方法参数。看起来这可能不可能,这对我来说有点胡说八道。也许有人知道scala或疣去除剂。我认为这不是马上就能做到的。还有其他用例:这包括以下内容: