Closed
Description
Please answer these questions before submitting your issue. Thanks!
What version of Go are you using (go version
)?
go version go1.8 darwin/amd64
package main
import (
"fmt"
)
type ValidationError struct {
Code string
Msg string
}
func (e ValidationError) Error() string {
return e.Code + e.Msg
}
func ReturnErr() *ValidationError {
return nil
}
func ReturnInterfaceErr() error {
var err *ValidationError
return err
}
func main() {
var err1 error
err1 = ReturnErr()
var err2 error = ReturnErr()
var err3 = ReturnErr()
// err1 false
fmt.Println("err1", err1 == nil)
// err2 false
fmt.Println("err2", err2 == nil)
// err3 true
fmt.Println("err3", err3 == nil)
var err4 error
err4 = ReturnInterfaceErr()
// err4 false
fmt.Println("err4", err4 == nil)
}