]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/testsuite/22_locale/codecvt/max_length/wchar_t/4.cc
Update copyright years.
[thirdparty/gcc.git] / libstdc++-v3 / testsuite / 22_locale / codecvt / max_length / wchar_t / 4.cc
CommitLineData
9c69a458 1// { dg-require-namedlocale "en_US.UTF-8" }
f63a8495 2
e61c8e23
BK
3// 2003-02-06 Petur Runolfsson <peturr02@ru.is>
4
8d9254fc 5// Copyright (C) 2003-2020 Free Software Foundation, Inc.
e61c8e23
BK
6//
7// This file is part of the GNU ISO C++ Library. This library is free
8// software; you can redistribute it and/or modify it under the
9// terms of the GNU General Public License as published by the
748086b7 10// Free Software Foundation; either version 3, or (at your option)
e61c8e23
BK
11// any later version.
12
13// This library is distributed in the hope that it will be useful,
14// but WITHOUT ANY WARRANTY; without even the implied warranty of
15// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16// GNU General Public License for more details.
17
18// You should have received a copy of the GNU General Public License along
748086b7
JJ
19// with this library; see the file COPYING3. If not see
20// <http://www.gnu.org/licenses/>.
e61c8e23
BK
21
22// 22.2.1.5 - Template class codecvt [lib.locale.codecvt]
23
24#include <locale>
25#include <testsuite_hooks.h>
26
27// Required instantiation
28// codecvt<wchar_t, char, mbstate_t>
29void test04()
30{
31 using namespace std;
32 typedef codecvt<wchar_t, char, mbstate_t> w_codecvt;
33
f63a8495 34 locale loc = locale("en_US.UTF-8");
e61c8e23
BK
35 locale::global(loc);
36 const w_codecvt* cvt = &use_facet<w_codecvt>(loc);
37
38 int k = cvt->max_length();
39 // Each UCS-4 wide character can be converted to at most 6 narrow
40 // characters in the UTF-8 encoding.
41 VERIFY( k == 6 );
42}
43
44int main ()
45{
46 test04();
47 return 0;
48}