char32_t_encoding.pass.cpp revision bc8d3f97eb5c958007f2713238472e0c1c8fe02c
15c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)//===----------------------------------------------------------------------===//
25c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)//
35c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)// ��������������������The LLVM Compiler Infrastructure
45c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)//
55c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)// This file is distributed under the University of Illinois Open Source
65c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)// License. See LICENSE.TXT for details.
75c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)//
85c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)//===----------------------------------------------------------------------===//
95c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)
105c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)// <locale>
115c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)
125c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)// template <> class codecvt<char32_t, char, mbstate_t>
135c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)
145c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)// int encoding() const throw();
155c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)
165c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)#include <locale>
175c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)#include <cassert>
185c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)
195c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)typedef std::codecvt<char32_t, char, std::mbstate_t> F;
205c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)
2153e740f4a82e17f3ae59772501622dc354e42336Torne (Richard Coles)int main()
225c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles){
23a854de003a23bf3c7f95ec0f8154ada64092ff5cTorne (Richard Coles)    std::locale l = std::locale::classic();
24a854de003a23bf3c7f95ec0f8154ada64092ff5cTorne (Richard Coles)    const F& f = std::use_facet<F>(l);
255c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)    assert(f.encoding() == 0);
26c1847b1379d12d0e05df27436bf19a9b1bf12deaTorne (Richard Coles)}
275c87bf8b86a7c82ef50fb7a89697d8e02e2553beTorne (Richard Coles)