As indicated in a related question, you could start exploring with -X
. I then tried -Xlint:help
and this yields some settings for shadowing:
Information:scalac: Enable or disable specific warnings
adapted-args Warn if an argument list is modified to match
the receiver.
nullary-unit Warn when nullary methods return Unit.
inaccessible Warn about inaccessible types in method signatures.
nullary-override Warn when non-nullary `def f()' overrides nullary
`def f'.
infer-any Warn when a type argument is inferred to be `Any`.
missing-interpolator A string literal appears to be missing an
interpolator id.
doc-detached A ScalaDoc comment appears to be detached from its
element.
private-shadow A private field (or class parameter) shadows a
superclass field.
type-parameter-shadow A local type parameter shadows a type already in
scope.
poly-implicit-overload Parameterized overloaded implicit methods are not
visible as view bounds.
option-implicit Option.apply used implicit view.
delayedinit-select Selecting member of DelayedInit.
by-name-right-associative By-name parameter of right associative operator.
package-object-classes Class or object defined in package object.
unsound-match Pattern match may not be typesafe.
stars-align Pattern sequence wildcard must align with sequence
component.
Probably -Xlint:private-shadow
is what you want?