]> git.ipfire.org Git - thirdparty/gcc.git/commit - libstdc++-v3/testsuite/22_locale/num_get/get/wchar_t/22131.cc
re PR libstdc++/22131 (std::num_get fails for input with invalid groups)
authorPaolo Carlini <pcarlini@suse.de>
Wed, 29 Jun 2005 11:48:53 +0000 (11:48 +0000)
committerPaolo Carlini <paolo@gcc.gnu.org>
Wed, 29 Jun 2005 11:48:53 +0000 (11:48 +0000)
commitd04e9b7fefe951cd5b24fe3b13db0a62da2b4092
tree2b6cb424d6ec5f62b07742a58556da2ccfca63d2
parent43b3a5b10fe5e139b2fcf763022843f83ba07f2e
re PR libstdc++/22131 (std::num_get fails for input with invalid groups)

2005-06-29  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/22131
* include/bits/locale_facets.tcc (num_get<>::_M_extract_int,
num_get<>::_M_extract_float, money_get<>::_M_extract):
Adjust to assign the result also when digit grouping is
wrong (but the grammar is correct), as per 22.2.2.1.2, p11-12
(NB: consistently for money_get too).
* config/locale/generic/c_locale.cc (__convert_from_v): Do
not check ios_base::failbit at the outset.
* config/locale/gnu/c_locale.cc: Likewise.
* testsuite/22_locale/money_get/get/char/22131.cc: New.
* testsuite/22_locale/money_get/get/wchar_t/22131.cc: Likewise.
* testsuite/22_locale/num_get/get/char/22131.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/22131.cc: Likewise.
* testsuite/22_locale/num_get/get/char/12.cc: Adjust.
* testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/07.cc:
Likewise.

From-SVN: r101416
12 files changed:
libstdc++-v3/ChangeLog
libstdc++-v3/config/locale/generic/c_locale.cc
libstdc++-v3/config/locale/gnu/c_locale.cc
libstdc++-v3/include/bits/locale_facets.tcc
libstdc++-v3/testsuite/22_locale/money_get/get/char/22131.cc [new file with mode: 0644]
libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/22131.cc [new file with mode: 0644]
libstdc++-v3/testsuite/22_locale/num_get/get/char/12.cc
libstdc++-v3/testsuite/22_locale/num_get/get/char/22131.cc [new file with mode: 0644]
libstdc++-v3/testsuite/22_locale/num_get/get/wchar_t/12.cc
libstdc++-v3/testsuite/22_locale/num_get/get/wchar_t/22131.cc [new file with mode: 0644]
libstdc++-v3/testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc
libstdc++-v3/testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/07.cc