I won't try Go until it implements generics and changes its hide-error-by-default behaviour.

Completely agree on the second part. It feels utterly silly that they refuse to use exceptions on the basis that errors should be explicit, but then allow for errors to be silently ignored just by not assigning them to variables.

In practice this is not a problem that is encountered pretty much ever. If you are afraid of it, run errcheck[1] on your code, and it'll tell you if you've missed anything.

[1] https://github.com/kisielk/errcheck