diff options
Diffstat (limited to 'gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members')
15 files changed, 0 insertions, 1022 deletions
diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/1.cc b/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/1.cc deleted file mode 100644 index dd2fbab1a..000000000 --- a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/1.cc +++ /dev/null @@ -1,54 +0,0 @@ -// 2001-01-17 Benjamin Kosnik <bkoz@redhat.com> - -// 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 -// <http://www.gnu.org/licenses/>. - -// 22.2.3.1.1 nunpunct members - -#include <locale> -#include <testsuite_hooks.h> - -void test01() -{ - using namespace std; - - bool test __attribute__((unused)) = true; - - // basic construction - locale loc_c = locale::classic(); - - // cache the numpunct facets - const numpunct<char>& nump_c = use_facet<numpunct<char> >(loc_c); - - // sanity check the data is correct. - char dp1 = nump_c.decimal_point(); - char th1 = nump_c.thousands_sep(); - string g1 = nump_c.grouping(); - string t1 = nump_c.truename(); - string f1 = nump_c.falsename(); - VERIFY ( dp1 == '.' ); - VERIFY ( th1 == ',' ); - VERIFY ( g1 == "" ); - VERIFY ( t1 == "true" ); - VERIFY ( f1 == "false" ); -} - -int main() -{ - test01(); - return 0; -} diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/2.cc b/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/2.cc deleted file mode 100644 index 191ff3e6c..000000000 --- a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/2.cc +++ /dev/null @@ -1,87 +0,0 @@ -// { dg-require-namedlocale "" } - -// 2001-01-17 Benjamin Kosnik <bkoz@redhat.com> - -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 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 -// <http://www.gnu.org/licenses/>. - -// 22.2.3.1.1 nunpunct members - -#include <locale> -#include <testsuite_hooks.h> - -void test02() -{ - using namespace std; - - bool test __attribute__((unused)) = true; - - // basic construction - locale loc_c = locale::classic(); - locale loc_us = locale("en_US"); - locale loc_is = locale("is_IS"); - locale loc_de = locale("de_DE"); - VERIFY( loc_c != loc_de ); - VERIFY( loc_us != loc_is ); - VERIFY( loc_us != loc_de ); - VERIFY( loc_de != loc_is ); - - // cache the numpunct facets - const numpunct<char>& nump_c = use_facet<numpunct<char> >(loc_c); - const numpunct<char>& nump_us = use_facet<numpunct<char> >(loc_us); - const numpunct<char>& nump_is = use_facet<numpunct<char> >(loc_is); - const numpunct<char>& nump_de = use_facet<numpunct<char> >(loc_de); - - // sanity check the data is correct. - string g1 = nump_c.grouping(); - string t1 = nump_c.truename(); - string f1 = nump_c.falsename(); - - char dp2 = nump_us.decimal_point(); - char th2 = nump_us.thousands_sep(); - string g2 = nump_us.grouping(); - string t2 = nump_us.truename(); - string f2 = nump_us.falsename(); - - char dp3 = nump_is.decimal_point(); - char th3 = nump_is.thousands_sep(); - string g3 = nump_is.grouping(); - string t3 = nump_is.truename(); - string f3 = nump_is.falsename(); - - char dp4 = nump_de.decimal_point(); - char th4 = nump_de.thousands_sep(); - string g4 = nump_de.grouping(); - string t4 = nump_de.truename(); - string f4 = nump_de.falsename(); - - VERIFY( dp2 != dp3 ); - VERIFY( th2 != th3 ); - - VERIFY( dp2 != dp4 ); - VERIFY( th2 != th4 ); - // XXX This isn't actually supported right now. - // VERIFY( t2 != t3 ); - // VERIFY( f2 != f3 ); -} - -int main() -{ - test02(); - return 0; -} diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/3.cc b/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/3.cc deleted file mode 100644 index 1c85cc0ca..000000000 --- a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/3.cc +++ /dev/null @@ -1,46 +0,0 @@ -// { dg-require-namedlocale "" } - -// 2001-01-24 Benjamin Kosnik <bkoz@redhat.com> - -// Copyright (C) 2001, 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 -// <http://www.gnu.org/licenses/>. - -// 22.2.3.2 Template class numpunct_byname - -#include <locale> -#include <testsuite_hooks.h> - -void test02() -{ - using namespace std; - - bool test __attribute__((unused)) = true; - - locale loc_it = locale("it_IT"); - - const numpunct<char>& nump_it = use_facet<numpunct<char> >(loc_it); - - string g = nump_it.grouping(); - - VERIFY( g == "" ); -} - -int main() -{ - test02(); - return 0; -} diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/cache_1.cc b/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/cache_1.cc deleted file mode 100644 index 66838ad37..000000000 --- a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/cache_1.cc +++ /dev/null @@ -1,77 +0,0 @@ -// 2003-07-06 Benjamin Kosnik <bkoz@redhat.com> - -// Copyright (C) 2003, 2009 Free Software Foundation, Inc. -// -// 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 -// <http://www.gnu.org/licenses/>. - -#include <locale> -#include <sstream> -#include <ostream> -#include <testsuite_hooks.h> - -class numpunct_checked : public std::numpunct<char> -{ - typedef std::numpunct<char> base; - -public: - explicit - numpunct_checked(std::size_t refs = 0): base(refs) { } - - string_type - base_truename() const - { return base::do_truename(); } - -protected: - virtual string_type - do_truename() const - { return base::do_truename() + "st"; } -}; - -// Thwart locale caching strategies that incorrectly overwrite base -// class data. -void test01() -{ - using namespace std; - - bool test __attribute__((unused)) = true; - const string basestr("true"); - const string derivedstr("truest"); - - const locale loc(locale::classic(), new numpunct_checked); - stringbuf sbuf; - ostream os(&sbuf); - os.setf(ios_base::boolalpha); - - // Pre-cache sanity check. - const numpunct<char>& np = use_facet<numpunct<char> >(loc); - VERIFY( np.truename() == derivedstr ); - - // Cache. - os.imbue(loc); - os << true; - VERIFY( sbuf.str() == derivedstr ); - - // Post-cache sanity check, make sure that base class is still fine. - VERIFY( np.truename() == derivedstr ); - const numpunct_checked& npd = static_cast<const numpunct_checked&>(np); - VERIFY( npd.base_truename() == basestr ); -} - -int main() -{ - test01(); - return 0; -} diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/cache_2.cc b/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/cache_2.cc deleted file mode 100644 index 3f7c130b2..000000000 --- a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/cache_2.cc +++ /dev/null @@ -1,89 +0,0 @@ -// 2003-07-06 Benjamin Kosnik <bkoz@redhat.com> - -// Copyright (C) 2003, 2009 Free Software Foundation, Inc. -// -// 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 -// <http://www.gnu.org/licenses/>. - -#include <locale> -#include <sstream> -#include <ostream> -#include <testsuite_hooks.h> - -class numpunct_checked : public std::numpunct<char> -{ - typedef std::numpunct<char> base; - -public: - explicit - numpunct_checked(std::size_t refs = 0): base(refs) { } - - string_type - base_truename() const - { return base::do_truename(); } - -protected: - virtual string_type - do_truename() const - { return base::do_truename() + "st"; } -}; - -// Changing caches deletes old cache, adds new one. -void test01() -{ - using namespace std; - - bool test __attribute__((unused)) = true; - const string empty; - const string basestr("true"); - const string derivedstr("truest"); - - const locale loc(locale::classic(), new numpunct_checked); - stringbuf sbuf; - ostream os(&sbuf); - os.setf(ios_base::boolalpha); - - // Pre-cache sanity check. - const numpunct<char>& np = use_facet<numpunct<char> >(loc); - VERIFY( np.truename() == derivedstr ); - - // Cache. - os.imbue(loc); - os << true; - VERIFY( sbuf.str() == derivedstr ); - - // Re-cache. - sbuf.str(empty); - os.imbue(locale::classic()); - os << true; - VERIFY( sbuf.str() == basestr ); - - // Cache new locale again. - sbuf.str(empty); - os.imbue(loc); - os << true; - VERIFY( sbuf.str() == derivedstr ); - - // Post-cache sanity check, make sure that base class is still fine. - VERIFY( np.truename() == derivedstr ); - const numpunct_checked& npd = static_cast<const numpunct_checked&>(np); - VERIFY( npd.base_truename() == basestr ); -} - -int main() -{ - test01(); - return 0; -} diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/wrapped_env.cc b/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/wrapped_env.cc deleted file mode 100644 index 779ee61a8..000000000 --- a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/wrapped_env.cc +++ /dev/null @@ -1,42 +0,0 @@ -// { dg-require-namedlocale "" } - -// 2001-08-15 Benjamin Kosnik <bkoz@redhat.com> - -// 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 -// <http://www.gnu.org/licenses/>. - -// 22.2.4.1.1 collate members - -#include <testsuite_hooks.h> - -#define main discard_main_1 -#include "1.cc" -#undef main - -#define main discard_main_2 -#include "2.cc" -#undef main - -int main() -{ - using namespace __gnu_test; - func_callback two; - two.push_back(&test01); - two.push_back(&test02); - run_tests_wrapped_env("de_DE", "LANG", two); - return 0; -} diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/wrapped_locale.cc b/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/wrapped_locale.cc deleted file mode 100644 index e59d7eb71..000000000 --- a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/char/wrapped_locale.cc +++ /dev/null @@ -1,42 +0,0 @@ -// { dg-require-namedlocale "" } - -// 2001-08-15 Benjamin Kosnik <bkoz@redhat.com> - -// 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 -// <http://www.gnu.org/licenses/>. - -// 22.2.4.1.1 collate members - -#include <testsuite_hooks.h> - -#define main discard_main_1 -#include "1.cc" -#undef main - -#define main discard_main_2 -#include "2.cc" -#undef main - -int main() -{ - using namespace __gnu_test; - func_callback two; - two.push_back(&test01); - two.push_back(&test02); - run_tests_wrapped_locale("ja_JP.eucjp", two); - return 0; -} diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/pod/1.cc b/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/pod/1.cc deleted file mode 100644 index e12695f1b..000000000 --- a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/pod/1.cc +++ /dev/null @@ -1,77 +0,0 @@ -// 2003-07-09 Benjamin Kosnik <bkoz@redhat.com> - -// Copyright (C) 2003, 2005, 2009 Free Software Foundation, Inc. -// -// 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 -// <http://www.gnu.org/licenses/>. - -#include <locale> -#include <sstream> -#include <ostream> -#include <stdexcept> -#include <testsuite_hooks.h> -#include <testsuite_character.h> - -// Check for numpunct and ctype dependencies. Make sure that numpunct -// can be created without ctype. -void test01() -{ - using namespace std; - using __gnu_test::pod_ushort; - typedef pod_ushort::value_type value_type; - typedef numpunct<pod_ushort>::string_type string_type; - typedef basic_stringbuf<pod_ushort> stringbuf_type; - typedef basic_ostream<pod_ushort> ostream_type; - - bool test __attribute__((unused)) = true; - - // Pre-cache sanity check. - const locale loc(locale::classic(), new numpunct<pod_ushort>); - const numpunct<pod_ushort>& np = use_facet<numpunct<pod_ushort> >(loc); - - pod_ushort dp = np.decimal_point(); - pod_ushort ts = np.thousands_sep(); - string g = np.grouping(); - string_type strue = np.truename(); - string_type sfalse = np.falsename(); - - pod_ushort basedp = { value_type('.') }; - pod_ushort basets = { value_type(',') }; - - string_type basetrue(4, pod_ushort()); - basetrue[0].value = value_type('t'); - basetrue[1].value = value_type('r'); - basetrue[2].value = value_type('u'); - basetrue[3].value = value_type('e'); - - string_type basefalse(5, pod_ushort()); - basefalse[0].value = value_type('f'); - basefalse[1].value = value_type('a'); - basefalse[2].value = value_type('l'); - basefalse[3].value = value_type('s'); - basefalse[4].value = value_type('e'); - - VERIFY( char_traits<pod_ushort>::eq(dp, basedp) ); - VERIFY( char_traits<pod_ushort>::eq(ts, basets) ); - VERIFY( g == "" ); - VERIFY( strue == basetrue ); - VERIFY( sfalse == basefalse ); -} - -int main() -{ - test01(); - return 0; -} diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/pod/2.cc b/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/pod/2.cc deleted file mode 100644 index 691431fd8..000000000 --- a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/pod/2.cc +++ /dev/null @@ -1,118 +0,0 @@ -// 2003-07-09 Benjamin Kosnik <bkoz@redhat.com> - -// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2009 -// Free Software Foundation, Inc. -// -// 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 -// <http://www.gnu.org/licenses/>. - -#include <locale> -#include <sstream> -#include <ostream> -#include <stdexcept> -#include <typeinfo> -#include <testsuite_hooks.h> -#include <testsuite_character.h> - -// Check for numpunct and ctype dependencies. Make sure that numpunct -// can be created without ctype. -void test01() -{ - using namespace std; - using __gnu_test::pod_ushort; - - typedef numpunct<pod_ushort>::string_type string_type; - typedef basic_ostringstream<pod_ushort> ostream_type; - - bool test = true; - - // Test formatted output. - ostream_type os; - const locale loc = locale::classic(); - os.imbue(loc); - os.setf(ios_base::boolalpha); - os.exceptions(ios_base::badbit); - - // 1: fail, no num_put. - try - { - // Calls to num_put.put will fail, as there's no num_put facet. - os << true; - test = false; - } - catch(const bad_cast& obj) - { } - catch(...) - { test = false; } - VERIFY( test ); - - // 2: fail, no ctype - const locale loc2(loc, new num_put<pod_ushort>); - os.clear(); - os.imbue(loc2); - try - { - // Calls to ctype.widen will fail, as there's no ctype facet. - os << true; - test = false; - } - catch(const bad_cast& obj) - { } - catch(...) - { test = false; } - VERIFY( test ); - - // 3: fail, no numpunct - const locale loc3(loc2, new ctype<pod_ushort>); - os.clear(); - os.imbue(loc3); - try - { - // Formatted output fails as no numpunct. - os << true; - test = false; - } - catch(const bad_cast& obj) - { } - catch(...) - { test = false; } - VERIFY( test ); - - // 4: works. - const locale loc4(loc3, new numpunct<pod_ushort>); - os.clear(); - os.imbue(loc4); - try - { - os << long(500); - string_type s = os.str(); - VERIFY( s.length() == 3 ); - - VERIFY( os.narrow(s[0], char()) == '5' ); - VERIFY( os.narrow(s[1], char()) == '0' ); - VERIFY( os.narrow(s[2], char()) == '0' ); - } - catch(const bad_cast& obj) - { test = false; } - catch(...) - { test = false; } - VERIFY( test ); -} - -int main() -{ - test01(); - return 0; -} diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/wchar_t/1.cc b/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/wchar_t/1.cc deleted file mode 100644 index 86c7de705..000000000 --- a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/wchar_t/1.cc +++ /dev/null @@ -1,54 +0,0 @@ -// 2001-01-17 Benjamin Kosnik <bkoz@redhat.com> - -// 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 -// <http://www.gnu.org/licenses/>. - -// 22.2.3.1.1 nunpunct members - -#include <locale> -#include <testsuite_hooks.h> - -void test01() -{ - using namespace std; - - bool test __attribute__((unused)) = true; - - // basic construction - locale loc_c = locale::classic(); - - // cache the numpunct facets - const numpunct<wchar_t>& nump_c = use_facet<numpunct<wchar_t> >(loc_c); - - // sanity check the data is correct. - wchar_t dp1 = nump_c.decimal_point(); - wchar_t th1 = nump_c.thousands_sep(); - string g1 = nump_c.grouping(); - wstring t1 = nump_c.truename(); - wstring f1 = nump_c.falsename(); - VERIFY ( dp1 == L'.' ); - VERIFY ( th1 == L',' ); - VERIFY ( g1 == "" ); - VERIFY ( t1 == L"true" ); - VERIFY ( f1 == L"false" ); -} - -int main() -{ - test01(); - return 0; -} diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/wchar_t/2.cc b/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/wchar_t/2.cc deleted file mode 100644 index 9901bba58..000000000 --- a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/wchar_t/2.cc +++ /dev/null @@ -1,86 +0,0 @@ -// { dg-require-namedlocale "" } - -// 2001-01-17 Benjamin Kosnik <bkoz@redhat.com> - -// 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 -// <http://www.gnu.org/licenses/>. - -// 22.2.3.1.1 nunpunct members - -#include <locale> -#include <testsuite_hooks.h> - -void test02() -{ - using namespace std; - - bool test __attribute__((unused)) = true; - - // basic construction - locale loc_c = locale::classic(); - locale loc_us = locale("en_US"); - locale loc_is = locale("is_IS"); - locale loc_de = locale("de_DE"); - VERIFY( loc_c != loc_de ); - VERIFY( loc_us != loc_is ); - VERIFY( loc_us != loc_de ); - VERIFY( loc_de != loc_is ); - - // cache the numpunct facets - const numpunct<wchar_t>& nump_c = use_facet<numpunct<wchar_t> >(loc_c); - const numpunct<wchar_t>& nump_us = use_facet<numpunct<wchar_t> >(loc_us); - const numpunct<wchar_t>& nump_is = use_facet<numpunct<wchar_t> >(loc_is); - const numpunct<wchar_t>& nump_de = use_facet<numpunct<wchar_t> >(loc_de); - - // sanity check the data is correct. - string g1 = nump_c.grouping(); - wstring t1 = nump_c.truename(); - wstring f1 = nump_c.falsename(); - - wchar_t dp2 = nump_us.decimal_point(); - wchar_t th2 = nump_us.thousands_sep(); - string g2 = nump_us.grouping(); - wstring t2 = nump_us.truename(); - wstring f2 = nump_us.falsename(); - - wchar_t dp3 = nump_is.decimal_point(); - wchar_t th3 = nump_is.thousands_sep(); - string g3 = nump_is.grouping(); - wstring t3 = nump_is.truename(); - wstring f3 = nump_is.falsename(); - - wchar_t dp4 = nump_de.decimal_point(); - wchar_t th4 = nump_de.thousands_sep(); - string g4 = nump_de.grouping(); - wstring t4 = nump_de.truename(); - wstring f4 = nump_de.falsename(); - - VERIFY( dp2 != dp3 ); - VERIFY( th2 != th3 ); - - VERIFY( dp2 != dp4 ); - VERIFY( th2 != th4 ); - // XXX This isn't actually supported right now. - // VERIFY( t2 != t3 ); - // VERIFY( f2 != f3 ); -} - -int main() -{ - test02(); - return 0; -} diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/wchar_t/cache_1.cc b/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/wchar_t/cache_1.cc deleted file mode 100644 index 305c1034f..000000000 --- a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/wchar_t/cache_1.cc +++ /dev/null @@ -1,77 +0,0 @@ -// 2003-07-06 Benjamin Kosnik <bkoz@redhat.com> - -// Copyright (C) 2003, 2009 Free Software Foundation, Inc. -// -// 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 -// <http://www.gnu.org/licenses/>. - -#include <locale> -#include <sstream> -#include <ostream> -#include <testsuite_hooks.h> - -class numpunct_checked : public std::numpunct<wchar_t> -{ - typedef std::numpunct<wchar_t> base; - -public: - explicit - numpunct_checked(std::size_t refs = 0): base(refs) { } - - string_type - base_truename() const - { return base::do_truename(); } - -protected: - virtual string_type - do_truename() const - { return base::do_truename() + L"st"; } -}; - -// Thwart locale caching strategies that incorrectly overwrite base -// class data. -void test01() -{ - using namespace std; - - bool test __attribute__((unused)) = true; - const wstring basestr(L"true"); - const wstring derivedstr(L"truest"); - - const locale loc(locale::classic(), new numpunct_checked); - wstringbuf sbuf; - wostream os(&sbuf); - os.setf(ios_base::boolalpha); - - // Pre-cache sanity check. - const numpunct<wchar_t>& np = use_facet<numpunct<wchar_t> >(loc); - VERIFY( np.truename() == derivedstr ); - - // Cache. - os.imbue(loc); - os << true; - VERIFY( sbuf.str() == derivedstr ); - - // Post-cache sanity check, make sure that base class is still fine. - VERIFY( np.truename() == derivedstr ); - const numpunct_checked& npd = static_cast<const numpunct_checked&>(np); - VERIFY( npd.base_truename() == basestr ); -} - -int main() -{ - test01(); - return 0; -} diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/wchar_t/cache_2.cc b/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/wchar_t/cache_2.cc deleted file mode 100644 index 017c3e866..000000000 --- a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/wchar_t/cache_2.cc +++ /dev/null @@ -1,89 +0,0 @@ -// 2003-07-06 Benjamin Kosnik <bkoz@redhat.com> - -// Copyright (C) 2003, 2009 Free Software Foundation, Inc. -// -// 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 -// <http://www.gnu.org/licenses/>. - -#include <locale> -#include <sstream> -#include <ostream> -#include <testsuite_hooks.h> - -class numpunct_checked : public std::numpunct<wchar_t> -{ - typedef std::numpunct<wchar_t> base; - -public: - explicit - numpunct_checked(std::size_t refs = 0): base(refs) { } - - string_type - base_truename() const - { return base::do_truename(); } - -protected: - virtual string_type - do_truename() const - { return base::do_truename() + L"st"; } -}; - -// Changing caches deletes old cache, adds new one. -void test01() -{ - using namespace std; - - bool test __attribute__((unused)) = true; - const wstring empty; - const wstring basestr(L"true"); - const wstring derivedstr(L"truest"); - - const locale loc(locale::classic(), new numpunct_checked); - wstringbuf sbuf; - wostream os(&sbuf); - os.setf(ios_base::boolalpha); - - // Pre-cache sanity check. - const numpunct<wchar_t>& np = use_facet<numpunct<wchar_t> >(loc); - VERIFY( np.truename() == derivedstr ); - - // Cache. - os.imbue(loc); - os << true; - VERIFY( sbuf.str() == derivedstr ); - - // Re-cache. - sbuf.str(empty); - os.imbue(locale::classic()); - os << true; - VERIFY( sbuf.str() == basestr ); - - // Cache new locale again. - sbuf.str(empty); - os.imbue(loc); - os << true; - VERIFY( sbuf.str() == derivedstr ); - - // Post-cache sanity check, make sure that base class is still fine. - VERIFY( np.truename() == derivedstr ); - const numpunct_checked& npd = static_cast<const numpunct_checked&>(np); - VERIFY( npd.base_truename() == basestr ); -} - -int main() -{ - test01(); - return 0; -} diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/wchar_t/wrapped_env.cc b/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/wchar_t/wrapped_env.cc deleted file mode 100644 index 779ee61a8..000000000 --- a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/wchar_t/wrapped_env.cc +++ /dev/null @@ -1,42 +0,0 @@ -// { dg-require-namedlocale "" } - -// 2001-08-15 Benjamin Kosnik <bkoz@redhat.com> - -// 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 -// <http://www.gnu.org/licenses/>. - -// 22.2.4.1.1 collate members - -#include <testsuite_hooks.h> - -#define main discard_main_1 -#include "1.cc" -#undef main - -#define main discard_main_2 -#include "2.cc" -#undef main - -int main() -{ - using namespace __gnu_test; - func_callback two; - two.push_back(&test01); - two.push_back(&test02); - run_tests_wrapped_env("de_DE", "LANG", two); - return 0; -} diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/wchar_t/wrapped_locale.cc b/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/wchar_t/wrapped_locale.cc deleted file mode 100644 index e59d7eb71..000000000 --- a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/numpunct/members/wchar_t/wrapped_locale.cc +++ /dev/null @@ -1,42 +0,0 @@ -// { dg-require-namedlocale "" } - -// 2001-08-15 Benjamin Kosnik <bkoz@redhat.com> - -// 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 -// <http://www.gnu.org/licenses/>. - -// 22.2.4.1.1 collate members - -#include <testsuite_hooks.h> - -#define main discard_main_1 -#include "1.cc" -#undef main - -#define main discard_main_2 -#include "2.cc" -#undef main - -int main() -{ - using namespace __gnu_test; - func_callback two; - two.push_back(&test01); - two.push_back(&test02); - run_tests_wrapped_locale("ja_JP.eucjp", two); - return 0; -} |