Hacker News new | ask | show | jobs
by jchw 2150 days ago
The second one is pretty intentional - it'd be annoying it were downright impossible.

The first and third one fails on go vet. The first one also fails to compile if you never read from err in the entire function.

1 comments

Vet accepts the third, and may (I forget) accept the first if err is redeclared or simply assigned.
My bad, I was thinking of errcheck, which is more thorough and integrated into most Go linting tools like Go CI linter.

https://github.com/kisielk/errcheck

In any case, it’s trivial to detect via static analysis.