Analyzer: nilerr checks returning nil when err is not nil
Go
63
34 commits
updated Sep 28, 2025
nilerr finds code which returns nil even though it checks that error is not nil.
func f() error {
err := do()
if err != nil {
return nil // miss
}
}
nilerr also finds code which returns error even though it checks that error is nil.
func f() error {
err := do()
if err == nil {
return err // miss
}
}
nilerr ignores code which has a miss with ignore comment.
func f() error {
err := do()
if err != nil {
//lint:ignore nilerr reason
return nil // ignore
}
}
$ go install github.com/gostaticanalysis/nilerr/cmd/nilerr@latest
$ nilerr ./...
146 followers · starred Feb 2022
38 followers · starred Jun 2022
20 followers · starred Apr 2021
Go
100.0%
Analyzer: nilerr checks returning nil when err is not nil
Go
63
34 commits
updated Sep 28, 2025
nilerr finds code which returns nil even though it checks that error is not nil.
func f() error {
err := do()
if err != nil {
return nil // miss
}
}
nilerr also finds code which returns error even though it checks that error is nil.
func f() error {
err := do()
if err == nil {
return err // miss
}
}
nilerr ignores code which has a miss with ignore comment.
func f() error {
err := do()
if err != nil {
//lint:ignore nilerr reason
return nil // ignore
}
}
$ go install github.com/gostaticanalysis/nilerr/cmd/nilerr@latest
$ nilerr ./...
146 followers · starred Feb 2022
38 followers · starred Jun 2022
20 followers · starred Apr 2021
Go
100.0%