Closed
Description
by dmitri.m:
What steps will reproduce the problem? If possible, include a link to a program on play.golang.org. The Go time package expects the decimal mark in fractional seconds to always be a dot. Attempting to parse a time string that uses a decimal comma results in an error: http://play.golang.org/p/d8qQasN0z1 Decimal commas are standard in many locales, but there is currently no way to parse the fractional part of the second in a time string if it's separated by a comma. https://en.wikipedia.org/wiki/Decimal_mark#Countries_using_Arabic_numerals_with_decimal_comma What is the expected output? In case the provided layout also uses a decimal comma, the time string should be parsed without errors. What do you see instead? parsing time "2013-08-19 22:56:01,234" as "2006-01-02 15:04:05,000": cannot parse "234" as ",000" Which compiler are you using (5g, 6g, 8g, gccgo)? 6g Which operating system are you using? OS X 10.8.4 Which version are you using? (run 'go version') go version devel +5037426bea2f Mon Aug 19 23:09:24 2013 +0400 darwin/amd64 Please provide any additional information below. Note that (*time.Time).Format() currently outputs decimal commas just fine since it doesn't see them as a special character. But making the straightforward change to support decimal commas in Parse() - by adding them to the stdFracSecond{0,9} classes - breaks this due to hardcoded '.' in formatNano().