bin/72006: floating point formating in non-C locales

David Schultz das at FreeBSD.ORG
Tue Feb 22 02:19:41 GMT 2005


Here's a simplified version of what POSIX/C99 say about
about the strtod()/*scanf() raised in this PR:

1. They do not recognize thousands' separators in the input.
2. They only understand the decimal point character in the current locale.
3. In locales other than C and POSIX, it's okay to add extensions
   to recognize additional strings.

I believe the present implementation follows the standard.
Because of (3), however, it would also be legal to recognize a
period in addition to whatever the locale specifies.  The real
issue is what makes sense from the point of view of having
applications work.

(From my point of view, it's easier to leave things as they are,
since the alternative involves pulling a few files off the vendor
branch.  But I use en_US, so I don't have this problem.)


More information about the freebsd-standards mailing list