From 554fd8c5195424bdbcabf5de30fdc183aba391bd Mon Sep 17 00:00:00 2001 From: upstream source tree Date: Sun, 15 Mar 2015 20:14:05 -0400 Subject: obtained gcc-4.6.4.tar.bz2 from upstream website; verified gcc-4.6.4.tar.bz2.sig; imported gcc-4.6.4 source tree from verified upstream tarball. downloading a git-generated archive based on the 'upstream' tag should provide you with a source tree that is binary identical to the one extracted from the above tarball. if you have obtained the source via the command 'git clone', however, do note that line-endings of files in your working directory might differ from line-endings of the respective files in the upstream repository. --- .../testsuite/22_locale/money_put/put/wchar_t/1.cc | 109 +++++++++++++++++++++ .../22_locale/money_put/put/wchar_t/12971.cc | 50 ++++++++++ .../testsuite/22_locale/money_put/put/wchar_t/2.cc | 108 ++++++++++++++++++++ .../testsuite/22_locale/money_put/put/wchar_t/3.cc | 89 +++++++++++++++++ .../22_locale/money_put/put/wchar_t/39168.cc | 50 ++++++++++ .../testsuite/22_locale/money_put/put/wchar_t/4.cc | 71 ++++++++++++++ .../testsuite/22_locale/money_put/put/wchar_t/5.cc | 69 +++++++++++++ .../testsuite/22_locale/money_put/put/wchar_t/6.cc | 58 +++++++++++ .../22_locale/money_put/put/wchar_t/wrapped_env.cc | 64 ++++++++++++ .../money_put/put/wchar_t/wrapped_locale.cc | 64 ++++++++++++ 10 files changed, 732 insertions(+) create mode 100644 libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/1.cc create mode 100644 libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/12971.cc create mode 100644 libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/2.cc create mode 100644 libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/3.cc create mode 100644 libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/39168.cc create mode 100644 libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/4.cc create mode 100644 libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/5.cc create mode 100644 libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/6.cc create mode 100644 libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/wrapped_env.cc create mode 100644 libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/wrapped_locale.cc (limited to 'libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t') diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/1.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/1.cc new file mode 100644 index 000000000..71f35abd1 --- /dev/null +++ b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/1.cc @@ -0,0 +1,109 @@ +// { dg-require-namedlocale "de_DE@euro" } + +// 2001-08-27 Benjamin Kosnik + +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009, 2010 +// Free Software Foundation +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// 22.2.6.2.1 money_put members + +#include +#include +#include + +// test wstring version +void test01() +{ + using namespace std; + typedef ostreambuf_iterator iterator_type; + + bool test __attribute__((unused)) = true; + + // basic construction + locale loc_c = locale::classic(); + locale loc_de = locale("de_DE@euro"); + VERIFY( loc_c != loc_de ); + + // sanity check the data is correct. + const wstring empty; + + // total EPA budget FY 2002 + const wstring digits1(L"720000000000"); + + // input less than frac_digits + const wstring digits2(L"-1"); + + // cache the money_put facet + wostringstream oss; + oss.imbue(loc_de); + const money_put& mon_put = + use_facet >(oss.getloc()); + + mon_put.put(oss.rdbuf(), true, oss, L' ', digits1); + wstring result1 = oss.str(); + VERIFY( result1 == L"7.200.000.000,00 " ); + + oss.str(empty); + mon_put.put(oss.rdbuf(), false, oss, L' ', digits1); + wstring result2 = oss.str(); + VERIFY( result2 == L"7.200.000.000,00 " ); + + // intl and non-intl versions should be the same. + VERIFY( result1 == result2 ); + + // now try with showbase, to get currency symbol in format + oss.setf(ios_base::showbase); + + oss.str(empty); + mon_put.put(oss.rdbuf(), true, oss, L' ', digits1); + wstring result3 = oss.str(); + VERIFY( result3 == L"7.200.000.000,00 EUR " ); + + oss.str(empty); + mon_put.put(oss.rdbuf(), false, oss, L' ', digits1); + wstring result4 = oss.str(); + VERIFY( result4 == L"7.200.000.000,00 \x20ac" ); + + // intl and non-intl versions should be different. + VERIFY( result3 != result4 ); + VERIFY( result3 != result1 ); + VERIFY( result4 != result2 ); + + oss.unsetf(ios_base::showbase); + + // test io.width() > length + // test various fill strategies + oss.str(empty); + oss.width(20); + mon_put.put(oss.rdbuf(), true, oss, L'*', digits2); + wstring result10 = oss.str(); + VERIFY( result10 == L"***************-,01*" ); + + oss.str(empty); + oss.width(20); + oss.setf(ios_base::internal); + mon_put.put(oss.rdbuf(), true, oss, L'*', digits2); + wstring result11 = oss.str(); + VERIFY( result11 == L"-,01****************" ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/12971.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/12971.cc new file mode 100644 index 000000000..cd430a9e1 --- /dev/null +++ b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/12971.cc @@ -0,0 +1,50 @@ +// 2003-11-09 Paolo Carlini + +// Copyright (C) 2003, 2004, 2009, 2010 Free Software Foundation +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// 22.2.6.2.1 money_put members + +#include +#include +#include + +// libstdc++/12971 +void test01() +{ + using namespace std; + bool test __attribute__((unused)) = true; + + typedef ostreambuf_iterator iterator_type; + + long double amount = 10.8L; + + // cache the money_put facet + wostringstream oss; + const money_put& mon_put = + use_facet >(oss.getloc()); + + mon_put.put(oss.rdbuf(), true, oss, L' ', amount); + wstring result = oss.str(); + VERIFY( result == L"11" ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/2.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/2.cc new file mode 100644 index 000000000..84331bd92 --- /dev/null +++ b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/2.cc @@ -0,0 +1,108 @@ +// { dg-require-namedlocale "en_HK" } + +// 2001-08-27 Benjamin Kosnik + +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009, 2010 +// Free Software Foundation +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// 22.2.6.2.1 money_put members + +#include +#include +#include + +// test wstring version +void test02() +{ + using namespace std; + typedef ostreambuf_iterator iterator_type; + + bool test __attribute__((unused)) = true; + + // basic construction + locale loc_c = locale::classic(); + locale loc_hk = locale("en_HK"); + VERIFY( loc_c != loc_hk ); + + // sanity check the data is correct. + const wstring empty; + + // total EPA budget FY 2002 + const wstring digits1(L"720000000000"); + + // est. cost, national missile "defense", expressed as a loss in USD 2001 + const wstring digits2(L"-10000000000000"); + + // not valid input + const wstring digits3(L"-A"); + + // input less than frac_digits + const wstring digits4(L"-1"); + + // cache the money_put facet + wostringstream oss; + oss.imbue(loc_hk); + const money_put& mon_put = + use_facet >(oss.getloc()); + + // now try with showbase, to get currency symbol in format + oss.setf(ios_base::showbase); + + // test sign of more than one digit, say hong kong. + oss.str(empty); + mon_put.put(oss.rdbuf(), false, oss, L' ', digits1); + wstring result5 = oss.str(); + VERIFY( result5 == L"HK$7,200,000,000.00" ); + + oss.str(empty); + mon_put.put(oss.rdbuf(), true, oss, L' ', digits2); + wstring result6 = oss.str(); + VERIFY( result6 == L"(HKD 100,000,000,000.00)" ); + + // test one-digit formats without zero padding + oss.imbue(loc_c); + oss.str(empty); + const money_put& mon_put2 = + use_facet >(oss.getloc()); + mon_put2.put(oss.rdbuf(), true, oss, L' ', digits4); + wstring result7 = oss.str(); + VERIFY( result7 == L"1" ); + + // test one-digit formats with zero padding, zero frac widths + oss.imbue(loc_hk); + oss.str(empty); + const money_put& mon_put3 = + use_facet >(oss.getloc()); + mon_put3.put(oss.rdbuf(), true, oss, L' ', digits4); + wstring result8 = oss.str(); + VERIFY( result8 == L"(HKD .01)" ); + + oss.unsetf(ios_base::showbase); + + // test bunk input + oss.str(empty); + mon_put.put(oss.rdbuf(), true, oss, L' ', digits3); + wstring result9 = oss.str(); + VERIFY( result9 == L"" ); +} + +int main() +{ + test02(); + return 0; +} diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/3.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/3.cc new file mode 100644 index 000000000..19921bf5d --- /dev/null +++ b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/3.cc @@ -0,0 +1,89 @@ +// { dg-require-namedlocale "de_DE@euro" } + +// 2001-08-27 Benjamin Kosnik + +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009, 2010 +// Free Software Foundation +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// 22.2.6.2.1 money_put members + +#include +#include +#include + +// test double version +void test03() +{ + using namespace std; + typedef ostreambuf_iterator iterator_type; + + bool test __attribute__((unused)) = true; + + // basic construction + locale loc_c = locale::classic(); + locale loc_de = locale("de_DE@euro"); + VERIFY( loc_c != loc_de ); + + // sanity check the data is correct. + const wstring empty; + + // total EPA budget FY 2002 + const long double digits1 = 720000000000.0; + + // cache the money_put facet + wostringstream oss; + oss.imbue(loc_de); + const money_put& mon_put = + use_facet >(oss.getloc()); + + mon_put.put(oss.rdbuf(), true, oss, L' ', digits1); + wstring result1 = oss.str(); + VERIFY( result1 == L"7.200.000.000,00 " ); + + oss.str(empty); + mon_put.put(oss.rdbuf(), false, oss, L' ', digits1); + wstring result2 = oss.str(); + VERIFY( result2 == L"7.200.000.000,00 " ); + + // intl and non-intl versions should be the same. + VERIFY( result1 == result2 ); + + // now try with showbase, to get currency symbol in format + oss.setf(ios_base::showbase); + + oss.str(empty); + mon_put.put(oss.rdbuf(), true, oss, L' ', digits1); + wstring result3 = oss.str(); + VERIFY( result3 == L"7.200.000.000,00 EUR " ); + + oss.str(empty); + mon_put.put(oss.rdbuf(), false, oss, L' ', digits1); + wstring result4 = oss.str(); + VERIFY( result4 == L"7.200.000.000,00 \x20ac" ); + + // intl and non-intl versions should be different. + VERIFY( result3 != result4 ); + VERIFY( result3 != result1 ); + VERIFY( result4 != result2 ); +} + +int main() +{ + test03(); + return 0; +} diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/39168.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/39168.cc new file mode 100644 index 000000000..05b2303a7 --- /dev/null +++ b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/39168.cc @@ -0,0 +1,50 @@ +// Copyright (C) 2009 Free Software Foundation +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// 22.2.6.2.1 money_put members + +#include +#include +#include +#include + +class my_moneypunct: public std::moneypunct +{ +protected: + std::string do_grouping() const { return std::string(1, CHAR_MAX); } +}; + +// libstdc++/39168 +void test01() +{ + bool test __attribute__((unused)) = true; + using namespace std; + + wostringstream oss; + oss.imbue(locale(oss.getloc(), new my_moneypunct)); + const money_put& mp = use_facet >(oss.getloc()); + + wstring digits(300, L'1'); + mp.put(oss.rdbuf(), false, oss, ' ', digits); + VERIFY( oss.str() == digits ); +} + +int main() +{ + test01(); + return 0; +} diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/4.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/4.cc new file mode 100644 index 000000000..d0c7f0258 --- /dev/null +++ b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/4.cc @@ -0,0 +1,71 @@ +// 2001-08-27 Benjamin Kosnik + +// Copyright (C) 2001, 2002, 2003, 2004, 2009 Free Software Foundation +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// 22.2.6.2.1 money_put members + +#include +#include +#include + +void test04() +{ + using namespace std; + bool test __attribute__((unused)) = true; + + // Check money_put works with other iterators besides streambuf + // output iterators. (As long as output_iterator requirements are met.) + typedef wstring::iterator iter_type; + typedef money_put mon_put_type; + const ios_base::iostate goodbit = ios_base::goodbit; + ios_base::iostate err = goodbit; + const locale loc_c = locale::classic(); + // woman, art, thief (stole the blues) + const wstring str(L"1943 Janis Joplin"); + const long double ld = 1943.0; + const wstring x(str.size(), 'x'); // have to have allocated wstring! + wstring res; + + ostringstream oss; + oss.imbue(locale(loc_c, new mon_put_type)); + + // Iterator advanced, state, output. + const mon_put_type& mp = use_facet(oss.getloc()); + + // 01 wstring + res = x; + iter_type ret1 = mp.put(res.begin(), false, oss, L' ', str); + wstring sanity1(res.begin(), ret1); + VERIFY( err == goodbit ); + VERIFY( res == L"1943xxxxxxxxxxxxx" ); + VERIFY( sanity1 == L"1943" ); + + // 02 long double + res = x; + iter_type ret2 = mp.put(res.begin(), false, oss, L' ', ld); + wstring sanity2(res.begin(), ret2); + VERIFY( err == goodbit ); + VERIFY( res == L"1943xxxxxxxxxxxxx" ); + VERIFY( sanity2 == L"1943" ); +} + +int main() +{ + test04(); + return 0; +} diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/5.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/5.cc new file mode 100644 index 000000000..7a9529ca3 --- /dev/null +++ b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/5.cc @@ -0,0 +1,69 @@ +// 2001-08-27 Benjamin Kosnik + +// Copyright (C) 2001, 2002, 2003, 2004, 2009 Free Software Foundation +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// 22.2.6.2.1 money_put members + +#include +#include +#include + +struct My_money_io : public std::moneypunct +{ + char_type do_decimal_point() const { return L'.'; } + char_type do_thousands_sep() const { return L','; } + std::string do_grouping() const { return "\003"; } + + std::wstring do_negative_sign() const { return L"()"; } + + int do_frac_digits() const { return 2; } + + pattern do_neg_format() const + { + pattern pat = { { symbol, space, sign, value } }; + return pat; + } +}; + +// libstdc++/5708 +void test05() +{ + using namespace std; + bool test __attribute__((unused)) = true; + typedef ostreambuf_iterator OutIt; + + locale loc(locale::classic(), new My_money_io); + + bool intl = false; + + wstring val(L"-123456"); + const money_put& mp = + use_facet >(loc); + + wostringstream fmt; + fmt.imbue(loc); + OutIt out(fmt); + mp.put(out, intl, fmt, L'*', val); + VERIFY( fmt.str() == L"*(1,234.56)" ); +} + +int main() +{ + test05(); + return 0; +} diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/6.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/6.cc new file mode 100644 index 000000000..2fbc05f5a --- /dev/null +++ b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/6.cc @@ -0,0 +1,58 @@ +// 2001-08-27 Benjamin Kosnik + +// Copyright (C) 2001, 2002, 2003, 2004, 2009 Free Software Foundation +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// 22.2.6.2.1 money_put members + +#include +#include +#include + +struct My_money_io_2 : public std::moneypunct +{ + char_type do_thousands_sep() const { return L','; } + std::string do_grouping() const { return "\001"; } +}; + +// Make sure we can output a very big amount of money (with grouping too). +void test06() +{ + using namespace std; + bool test __attribute__((unused)) = true; + typedef ostreambuf_iterator OutIt; + + locale loc(locale::classic(), new My_money_io_2); + + bool intl = false; + + long double val = 1.0e50L; + const money_put& mp = + use_facet >(loc); + + wostringstream fmt; + fmt.imbue(loc); + OutIt out(fmt); + mp.put(out, intl, fmt, L'*', val); + VERIFY( fmt.good() ); +} + +int main() +{ + test06(); + return 0; +} diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/wrapped_env.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/wrapped_env.cc new file mode 100644 index 000000000..3b13bdc28 --- /dev/null +++ b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/wrapped_env.cc @@ -0,0 +1,64 @@ +// { dg-require-namedlocale "de_DE" } +// { dg-require-namedlocale "de_DE@euro" } +// { dg-require-namedlocale "en_HK" } + +// 2001-08-15 Benjamin Kosnik + +// Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// 22.2.4.1.1 collate members + +#include + +#define main discard_main_1 +#include "1.cc" +#undef main + +#define main discard_main_2 +#include "2.cc" +#undef main + +#define main discard_main_3 +#include "3.cc" +#undef main + +#define main discard_main_4 +#include "4.cc" +#undef main + +#define main discard_main_5 +#include "5.cc" +#undef main + +#define main discard_main_6 +#include "6.cc" +#undef main + +int main() +{ + using namespace __gnu_test; + func_callback two; + two.push_back(&test01); + two.push_back(&test02); + two.push_back(&test03); + two.push_back(&test04); + two.push_back(&test05); + two.push_back(&test06); + run_tests_wrapped_env("de_DE", "LANG", two); + return 0; +} diff --git a/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/wrapped_locale.cc b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/wrapped_locale.cc new file mode 100644 index 000000000..b160fb72a --- /dev/null +++ b/libstdc++-v3/testsuite/22_locale/money_put/put/wchar_t/wrapped_locale.cc @@ -0,0 +1,64 @@ +// { dg-require-namedlocale "ja_JP.eucjp" } +// { dg-require-namedlocale "de_DE@euro" } +// { dg-require-namedlocale "en_HK" } + +// 2001-08-15 Benjamin Kosnik + +// Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// 22.2.4.1.1 collate members + +#include + +#define main discard_main_1 +#include "1.cc" +#undef main + +#define main discard_main_2 +#include "2.cc" +#undef main + +#define main discard_main_3 +#include "3.cc" +#undef main + +#define main discard_main_4 +#include "4.cc" +#undef main + +#define main discard_main_5 +#include "5.cc" +#undef main + +#define main discard_main_6 +#include "6.cc" +#undef main + +int main() +{ + using namespace __gnu_test; + func_callback two; + two.push_back(&test01); + two.push_back(&test02); + two.push_back(&test03); + two.push_back(&test04); + two.push_back(&test05); + two.push_back(&test06); + run_tests_wrapped_locale("ja_JP.eucjp", two); + return 0; +} -- cgit v1.2.3