I find the first two false values surprising, can someone explain?
package main
import (
"fmt"
"reflect"
"time"
)
func main() {
var t1 time.Time
s := t1.In(time.UTC).Format(time.RFC3339)
t2, err := time.Parse(time.RFC3339, s)
fmt.Println(err, reflect.DeepEqual(t1, t2), t1 == t2, t1.Equal(t2), t1, t2)
}
<nil> false false true 0001-01-01 00:00:00 +0000 UTC 0001-01-01 00:00:00 +0000 UTC
http://play.golang.org/p/0RyQfFqk7s