Return-Path: Delivered-To: apmail-incubator-stdcxx-dev-archive@www.apache.org Received: (qmail 83407 invoked from network); 12 May 2007 22:14:38 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 12 May 2007 22:14:38 -0000 Received: (qmail 16545 invoked by uid 500); 12 May 2007 22:14:44 -0000 Delivered-To: apmail-incubator-stdcxx-dev-archive@incubator.apache.org Received: (qmail 16491 invoked by uid 500); 12 May 2007 22:14:44 -0000 Mailing-List: contact stdcxx-dev-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: stdcxx-dev@incubator.apache.org Delivered-To: mailing list stdcxx-dev@incubator.apache.org Received: (qmail 16480 invoked by uid 99); 12 May 2007 22:14:44 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 12 May 2007 15:14:44 -0700 X-ASF-Spam-Status: No, hits=-100.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO brutus.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 12 May 2007 15:14:37 -0700 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 26898714057 for ; Sat, 12 May 2007 15:14:16 -0700 (PDT) Message-ID: <16329896.1179008056123.JavaMail.jira@brutus> Date: Sat, 12 May 2007 15:14:16 -0700 (PDT) From: "Mark Brown (JIRA)" To: stdcxx-dev@incubator.apache.org Subject: [jira] Created: (STDCXX-412) num_get fails to parse currency in international format MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org num_get fails to parse currency in international format ------------------------------------------------------- Key: STDCXX-412 URL: https://issues.apache.org/jira/browse/STDCXX-412 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 http://mail-archives.apache.org/mod_mbox/incubator-stdcxx-dev/200705.mbox/%3c46461EFE.20506@roguewave.com%3e: -----Original Message----- From: sebor@roguewave.com Sent: Sat, 12 May 2007 14:09:34 -0600 To: stdcxx-dev@incubator.apache.org 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 when it needs moneypunct. 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.