mirror of https://github.com/golang/go.git
The recent shuffle in parsing formats exposed probably unintentional
behavior in time.Parse, namely that it was mostly ignoring ".99999"
in the format, producing the following behavior:
fmt.Println(time.Parse("03:04:05.999 MST", "12:00:00.888 PDT")) // error (.888 unexpected)
fmt.Println(time.Parse("03:04:05.999", "12:00:00")) // error (input too short)
fmt.Println(time.Parse("03:04:05.999 MST", "12:00:00 PDT")) // ok (extra bytes on input make it ok)
http://play.golang.org/p/ESJ1UYXzq2
API CHANGE:
This CL makes all three examples valid: ".999" can match an
empty string or else a fractional second with at most nine digits.
Fixes #3701.
R=r, r
CC=golang-dev
https://golang.org/cl/6267045
|
||
|---|---|---|
| .. | ||
| example_test.go | ||
| format.go | ||
| internal_test.go | ||
| sleep.go | ||
| sleep_test.go | ||
| sys_plan9.go | ||
| sys_unix.go | ||
| sys_windows.go | ||
| tick.go | ||
| tick_test.go | ||
| time.go | ||
| time_test.go | ||
| zoneinfo.go | ||
| zoneinfo_plan9.go | ||
| zoneinfo_read.go | ||
| zoneinfo_unix.go | ||
| zoneinfo_windows.go | ||