If you want precise control of errors, this may not be the solution, but for me, most of the time, any error is a show stopper.
So, I use functions instead.
func Err(err error) {
if err!=nil {
fmt.Println("Oops", err)
os.Exit(1)
}
}
fi, err := os.Open("mmm.txt")
Err(err)