codecvt_utf8_utf16_always_noconv.pass.cpp revision b64f8b07c104c6cc986570ac8ee0ed16a9f23976
1//===----------------------------------------------------------------------===//
2//
3//                     The LLVM Compiler Infrastructure
4//
5// This file is dual licensed under the MIT and the University of Illinois Open
6// Source Licenses. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10// <codecvt>
11
12// template <class Elem, unsigned long Maxcode = 0x10ffff,
13//           codecvt_mode Mode = (codecvt_mode)0>
14// class codecvt_utf8_utf16
15//     : public codecvt<Elem, char, mbstate_t>
16// {
17//     // unspecified
18// };
19
20// bool always_noconv() const throw();
21
22#include <codecvt>
23#include <cassert>
24
25int main()
26{
27    {
28        typedef std::codecvt_utf8_utf16<wchar_t> C;
29        C c;
30        bool r = c.always_noconv();
31        assert(r == false);
32    }
33    {
34        typedef std::codecvt_utf8_utf16<char16_t> C;
35        C c;
36        bool r = c.always_noconv();
37        assert(r == false);
38    }
39    {
40        typedef std::codecvt_utf8_utf16<char32_t> C;
41        C c;
42        bool r = c.always_noconv();
43        assert(r == false);
44    }
45}
46