An open API service indexing awesome lists of open source software.

https://github.com/gostaticanalysis/nilerr

Analyzer: nilerr checks returning nil when err is not nil
https://github.com/gostaticanalysis/nilerr

analyzer golang staticanalysis

Last synced: 25 days ago
JSON representation

Analyzer: nilerr checks returning nil when err is not nil

Awesome Lists containing this project

README

          

# nilerr

[![pkg.go.dev][gopkg-badge]][gopkg]

`nilerr` finds code which returns nil even though it checks that error is not nil.

```go
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.

```go
func f() error {
err := do()
if err == nil {
return err // miss
}
}
```

`nilerr` ignores code which has a miss with ignore comment.

```go
func f() error {
err := do()
if err != nil {
//lint:ignore nilerr reason
return nil // ignore
}
}
```

## How to use
```
$ go install github.com/gostaticanalysis/nilerr/cmd/nilerr@latest
$ nilerr ./...
```

[gopkg]: https://pkg.go.dev/github.com/gostaticanalysis/nilerr
[gopkg-badge]: https://pkg.go.dev/badge/github.com/gostaticanalysis/nilerr?status.svg