File indexing completed on 2025-01-18 09:38:48
0001
0002
0003
0004
0005
0006
0007
0008 #ifndef BOOST_IOSTREAMS_DETAIL_CONFIG_CODECVT_HPP_INCLUDED
0009 #define BOOST_IOSTREAMS_DETAIL_CONFIG_CODECVT_HPP_INCLUDED
0010
0011 #include <boost/config.hpp>
0012 #include <boost/detail/workaround.hpp>
0013 #include <boost/iostreams/detail/config/wide_streams.hpp>
0014 #include <cstddef>
0015
0016 #if defined(_MSC_VER)
0017 # pragma once
0018 #endif
0019
0020
0021
0022 #if defined(__MSL_CPP__) || defined(__LIBCOMO__) || \
0023 BOOST_WORKAROUND(_STLPORT_VERSION, <= 0x450) || \
0024 defined(_LIBCPP_VERSION) \
0025
0026 # define BOOST_IOSTREAMS_NO_PRIMARY_CODECVT_DEFINITION
0027 #endif
0028
0029 #if defined(__GLIBCPP__) || defined(__GLIBCXX__) || \
0030 BOOST_WORKAROUND(_STLPORT_VERSION, > 0x450) \
0031
0032 # define BOOST_IOSTREAMS_EMPTY_PRIMARY_CODECVT_DEFINITION
0033 #endif
0034
0035
0036
0037 #if BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3205)) || \
0038 BOOST_WORKAROUND(_STLPORT_VERSION, < 0x461) \
0039
0040 # define BOOST_IOSTREAMS_NO_CODECVT_CTOR_FROM_SIZE_T
0041 #endif
0042
0043
0044
0045 #if !defined(__MSL_CPP__) && !defined(__LIBCOMO__) && !defined(__clang__) && \
0046 (!defined(BOOST_RWSTD_VER) || BOOST_RWSTD_VER < 0x04010300) && \
0047 (!defined(__MACH__) || !defined(__INTEL_COMPILER))
0048
0049 # define BOOST_IOSTREAMS_CODECVT_CV_QUALIFIER const
0050 #else
0051 # define BOOST_IOSTREAMS_CODECVT_CV_QUALIFIER
0052 #endif
0053
0054
0055
0056 #if BOOST_WORKAROUND(_STLPORT_VERSION, < 0x461)
0057 # define BOOST_IOSTREAMS_NO_CODECVT_MAX_LENGTH
0058 #endif
0059
0060
0061
0062 #ifndef BOOST_IOSTREAMS_NO_LOCALE
0063 # include <locale>
0064 #endif
0065
0066
0067 namespace std {
0068
0069 #if defined(__LIBCOMO__)
0070 using ::mbstate_t;
0071 #elif defined(BOOST_DINKUMWARE_STDLIB) && !defined(BOOST_BORLANDC)
0072 using ::mbstate_t;
0073 #elif defined(__SGI_STL_PORT)
0074 #elif defined(BOOST_NO_STDC_NAMESPACE)
0075 using ::codecvt;
0076 using ::mbstate_t;
0077 #endif
0078
0079 }
0080
0081 #endif