diff options
Diffstat (limited to 'gcc-4.4.3/libstdc++-v3/testsuite/22_locale/codecvt/length/wchar_t/1.cc')
-rw-r--r-- | gcc-4.4.3/libstdc++-v3/testsuite/22_locale/codecvt/length/wchar_t/1.cc | 65 |
1 files changed, 0 insertions, 65 deletions
diff --git a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/codecvt/length/wchar_t/1.cc b/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/codecvt/length/wchar_t/1.cc deleted file mode 100644 index 9bd9ade0a..000000000 --- a/gcc-4.4.3/libstdc++-v3/testsuite/22_locale/codecvt/length/wchar_t/1.cc +++ /dev/null @@ -1,65 +0,0 @@ -// 2000-08-17 Benjamin Kosnik <bkoz@cygnus.com> - -// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 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.1.5 - Template class codecvt [lib.locale.codecvt] - -#include <locale> -#include <cstring> -#include <testsuite_hooks.h> - -// Need to explicitly set the state(mbstate_t) to zero. -// How to do this is not specified by the ISO C99 standard, so we -// might need to add some operators to make the intuiative case -// work: -// w_codecvt::state_type state00; -// state00 = 0; -// or, can use this explicit "C" initialization: -// w_codecvt::state_type state01 = {0, 0}; -// .. except Ulrich says: Use memset. Always use memset. Feel the force... -void -zero_state(std::mbstate_t& state) -{ std::memset(&state, 0, sizeof(std::mbstate_t)); } - -// Required instantiation -// codecvt<wchar_t, char, mbstate_t> -void test01() -{ - using namespace std; - typedef codecvt<wchar_t, char, mbstate_t> w_codecvt; - typedef char ext_type; - - bool test __attribute__((unused)) = true; - const ext_type* e_lit = "black pearl jasmine tea"; - int size = strlen(e_lit); - - locale loc; - const w_codecvt* cvt = &use_facet<w_codecvt>(loc); - - w_codecvt::state_type state04; - zero_state(state04); - int j = cvt->length(state04, e_lit, e_lit + size, 5); - VERIFY( j == 5 ); -} - -int main () -{ - test01(); - return 0; -} |