Skip to content

unreachable-type-switch-case

Detect type-switch cases hidden by earlier interfaces.

Updated View as Markdown

Default severity: warning

Type-switch cases are evaluated in source order. A later concrete type or narrower interface is unreachable when it necessarily implements an interface listed by an earlier case.

Bad

switch value.(type) { case io.Reader: use(); case io.ReadCloser: use() }

Good

switch value.(type) { case io.ReadCloser: use(); case io.Reader: use() }
Navigation

Type to search…

↑↓ navigate↵ selectEsc close