Mercurial > hg > vamp-build-and-test
comparison DEPENDENCIES/generic/include/boost/iostreams/detail/config/codecvt.hpp @ 16:2665513ce2d3
Add boost headers
author | Chris Cannam |
---|---|
date | Tue, 05 Aug 2014 11:11:38 +0100 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
15:663ca0da4350 | 16:2665513ce2d3 |
---|---|
1 // (C) Copyright 2008 CodeRage, LLC (turkanis at coderage dot com) | |
2 // (C) Copyright 2003-2007 Jonathan Turkanis | |
3 // Distributed under the Boost Software License, Version 1.0. (See accompanying | |
4 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt.) | |
5 | |
6 // See http://www.boost.org/libs/iostreams for documentation. | |
7 | |
8 #ifndef BOOST_IOSTREAMS_DETAIL_CONFIG_CODECVT_HPP_INCLUDED | |
9 #define BOOST_IOSTREAMS_DETAIL_CONFIG_CODECVT_HPP_INCLUDED | |
10 | |
11 #include <boost/config.hpp> | |
12 #include <boost/detail/workaround.hpp> | |
13 #include <boost/iostreams/detail/config/wide_streams.hpp> | |
14 #include <cstddef> | |
15 | |
16 #if defined(_MSC_VER) && (_MSC_VER >= 1020) | |
17 # pragma once | |
18 #endif | |
19 | |
20 //------------------Support for codecvt with user-defined state types---------// | |
21 | |
22 #if defined(__MSL_CPP__) || defined(__LIBCOMO__) || \ | |
23 BOOST_WORKAROUND(_STLPORT_VERSION, <= 0x450) \ | |
24 /**/ | |
25 # define BOOST_IOSTREAMS_NO_PRIMARY_CODECVT_DEFINITION | |
26 #endif | |
27 | |
28 #if defined(__GLIBCPP__) || defined(__GLIBCXX__) || \ | |
29 BOOST_WORKAROUND(_STLPORT_VERSION, > 0x450) \ | |
30 /**/ | |
31 # define BOOST_IOSTREAMS_EMPTY_PRIMARY_CODECVT_DEFINITION | |
32 #endif | |
33 | |
34 //------------------Check for codecvt ctor taking a reference count-----------// | |
35 | |
36 #if BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3205)) || \ | |
37 BOOST_WORKAROUND(_STLPORT_VERSION, < 0x461) \ | |
38 /**/ | |
39 # define BOOST_IOSTREAMS_NO_CODECVT_CTOR_FROM_SIZE_T | |
40 #endif | |
41 | |
42 //------------------Normalize codecvt::length---------------------------------// | |
43 | |
44 #if !defined(__MSL_CPP__) && !defined(__LIBCOMO__) && \ | |
45 (!defined(BOOST_RWSTD_VER) || BOOST_RWSTD_VER < 0x04010300) && \ | |
46 (!defined(__MACH__) || !defined(__INTEL_COMPILER)) | |
47 /**/ | |
48 # define BOOST_IOSTREAMS_CODECVT_CV_QUALIFIER const | |
49 #else | |
50 # define BOOST_IOSTREAMS_CODECVT_CV_QUALIFIER | |
51 #endif | |
52 | |
53 //------------------Check for codecvt::max_length-----------------------------// | |
54 | |
55 #if BOOST_WORKAROUND(_STLPORT_VERSION, < 0x461) | |
56 # define BOOST_IOSTREAMS_NO_CODECVT_MAX_LENGTH | |
57 #endif | |
58 | |
59 //------------------Put mbstate_t and codecvt in std--------------------------// | |
60 | |
61 #ifndef BOOST_IOSTREAMS_NO_LOCALE | |
62 # include <locale> | |
63 #endif | |
64 | |
65 // From Robert Ramey's version of utf8_codecvt_facet. | |
66 namespace std { | |
67 | |
68 #if defined(__LIBCOMO__) | |
69 using ::mbstate_t; | |
70 #elif defined(BOOST_DINKUMWARE_STDLIB) && !defined(__BORLANDC__) | |
71 using ::mbstate_t; | |
72 #elif defined(__SGI_STL_PORT) | |
73 #elif defined(BOOST_NO_STDC_NAMESPACE) | |
74 using ::codecvt; | |
75 using ::mbstate_t; | |
76 #endif | |
77 | |
78 } // End namespace std. | |
79 | |
80 #endif // #ifndef BOOST_IOSTREAMS_DETAIL_CONFIG_CODECVT_HPP_INCLUDED |