[edit]
Though maybe I was thinking of adding parameters like https://play.golang.org/p/FKUMlQzCI5
In any case 'thebaer continues to be my hero.
We have a small library of functions for sweeping up error returns, and for collecting errors from multiple functions and checking them all at once. It helps a lot.
Golang is very much on to something with it's "errors are values" philosophy, but I'd be the first to acknowledge that it's not a fully baked philosophy. It is weird to discover fundamental things about how to structure basic code several years into writing in a language, but that happens somewhat regularly with Go.
Edit: prodigal_erik found it: https://golang.org/ref/spec#Calls