incubator-stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Travis Vitek (JIRA)" <j...@apache.org>
Subject [jira] Created: (STDCXX-535) std::num_put can generate output that is not parseable by std::num_get facet
Date Fri, 24 Aug 2007 00:00:46 GMT
std::num_put can generate output that is not parseable by std::num_get facet
----------------------------------------------------------------------------

                 Key: STDCXX-535
                 URL: https://issues.apache.org/jira/browse/STDCXX-535
             Project: C++ Standard Library
          Issue Type: Bug
          Components: 22. Localization
    Affects Versions: 4.1.4, 4.1.3, 4.1.2
            Reporter: Travis Vitek


std::num_get<>::get_date() is required to be able to parse the output produced by std::num_put<>::put(...,
'x'). For some locales, the '%x' format specifier expands out to '%e.%m.%Y'. When a date is
formatted using this, there will be a leading space, and that leading space causes the num_get<>::get_date()
operation to fail.

The root of the problem is that the POSIX strftime() function requires that the '%e' specifier
generate whitespace for single digit monthdays, and the POSIX strptime() function says that
the number may be padded on the left with 0s. It does not appear to specify that whitespace
is allowed. The strptime() implementation on some platforms [sun, linux, compaq, aix] allow
this whitespace, while others [hp, freebsd] do not.

Discussion here.
[http://mail-archives.apache.org/mod_mbox/incubator-stdcxx-dev/200708.mbox/%3c46CC8D6C.9000007@roguewave.com%3e]

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message