Overview
staticcheck を使って unused なコードを一括で検査します。
Install
$ go get honnef.co/go/tools/cmd/staticcheck
ref: https://staticcheck.io/docs
検出する
U1000 がどこからも参照されていないコードの警告コードになるので、検査結果を grep で引っ掛ければ一覧を取得できます。
$ staticcheck ./... | grep "U1000"
その他のコードの一覧は https://staticcheck.io/docs/checks に記載されてます。
おまけ
golangci-lint を使うと「よろしくない」コードを一括で検査して警告してくれます。Reviewdog と組み合わせて CI で利用するケースは多いかと思いますが、普通に手元でコードを検査できるのも便利です。
$ GO111MODULE=on go get github.com/golangci/golangci-lint/cmd/golangci-lint@master golangci-lint run --config ./.github/.golangci-lint --tests=false ./...
各オプションの詳細については golangci-lint run -h
で調べると良いです。