stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mark Brown (JIRA)" <>
Subject [jira] Updated: (STDCXX-412) money_get fails to parse currency in international format
Date Sat, 12 May 2007 22:20:15 GMT


Mark Brown updated STDCXX-412:

    Summary: money_get fails to parse currency in international format  (was: num_get fails
to parse currency in international format)

Corrected the name of the facet (it's money_get, not num_get). Doh!

> money_get fails to parse currency in international format
> ---------------------------------------------------------
>                 Key: STDCXX-412
>                 URL:
>             Project: C++ Standard Library
>          Issue Type: Bug
>          Components: 22. Localization
>    Affects Versions: 4.1.3
>         Environment: gcc 4.1.1 on Linux
>            Reporter: Mark Brown
> The example program money_get fails when extractinng monetary values in international
format such as "USD 1234" probably because of a bug in the library. From
> -----Original Message-----
> From:
> Sent: Sat, 12 May 2007 14:09:34 -0600
> To:
> Subject: Re: svn commit: r537492 - /incubator/stdcxx/trunk/doc/stdlibref/money-get.html
> Mark Brown wrote:
> > Martin,
> > 
> > Thanks for fixing it! I have a question about the new code: Could you show an example
of an international monetary string that would be correctly parsed by the facet? I tried a
few but none of them could be parsed. For instance, "USD 1234" gives this output:
> > USD 1234 --> "" --> 0
> > The same happens with g++ and STLport so I suspect I must be doing something wrong.
Removing the space between the currency symbol and the number didn't make a difference.
> Hmm, I guess I should have tested the internationalized behavior before
> I put it in. I think the code is correct as is and your input should be
> correctly parsed by the facet (and produce 1234 on output). I'm not sure
> what's going on. Stepping through the code it looks like the money_get
> facet ends up retrieving the wrong specialization of moneypunct, i.e.,
> moneypunct<char, false> when it needs moneypunct<char, true>. What's
> puzzling is that both libstdc++ and STLport behave the same. It seems
> like too much of a coincidence for all three implementations to suffer
> from the same bug.
> In any event, thanks for bringing it to our attention! Can you open an
> issue for this as well so we don't forget to investigate it in case I
> don't get around to it soon?
> Thanks
> Martin

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

View raw message