When I initialize an error variable globally it seems that it\'s nil to another function in the same package.
I don\'t understand why is this code not panicing?
func main() {
_, loadErr := os.Open("asdasd")
You create a new, local variable loadErr, the global one is never set. Use just =, not :=, to use the global one.
Edit: To hold the second value too, you have to predeclare the second variable:
var f *os.File
f, loadErr = os.Open("asdasd")
Unfortunately, you can't use := here, as := will not consider non-local variables and just create a local variable in this case.