From eaf85795f372a3fe6dcbcd1c4f74e07a51c5cbc3 Mon Sep 17 00:00:00 2001 From: Robert Ramey Date: Wed, 14 Jun 2017 15:25:49 -0700 Subject: [PATCH] adjustment to export codecvt_null --- include/boost/archive/codecvt_null.hpp | 13 ++++++++----- include/boost/archive/impl/xml_woarchive_impl.ipp | 2 ++ include/boost/archive/iterators/mb_from_wchar.hpp | 3 ++- include/boost/archive/iterators/wchar_from_mb.hpp | 2 ++ include/boost/archive/wcslen.hpp | 2 ++ src/codecvt_null.cpp | 4 ++-- 6 files changed, 18 insertions(+), 8 deletions(-) diff --git a/include/boost/archive/codecvt_null.hpp b/include/boost/archive/codecvt_null.hpp index 9cc9e572..7bce2b9b 100644 --- a/include/boost/archive/codecvt_null.hpp +++ b/include/boost/archive/codecvt_null.hpp @@ -18,8 +18,11 @@ #include #include // NULL, size_t +#ifndef BOOST_NO_CWCHAR #include // for mbstate_t +#endif #include +#include #include #include // must be the last header @@ -62,7 +65,7 @@ public: template<> class BOOST_SYMBOL_VISIBLE codecvt_null : public std::codecvt { - virtual BOOST_WARCHIVE_DECL std::codecvt_base::result + virtual BOOST_WARCHIVE_DECL BOOST_DLLEXPORT std::codecvt_base::result do_out( std::mbstate_t & state, const wchar_t * first1, @@ -71,8 +74,8 @@ class BOOST_SYMBOL_VISIBLE codecvt_null : public std::codecvt : public std::codecvt : public std::codecvt(no_locale_manage) {} virtual ~codecvt_null(){}; diff --git a/include/boost/archive/impl/xml_woarchive_impl.ipp b/include/boost/archive/impl/xml_woarchive_impl.ipp index 58f92c9d..01b1a052 100644 --- a/include/boost/archive/impl/xml_woarchive_impl.ipp +++ b/include/boost/archive/impl/xml_woarchive_impl.ipp @@ -17,7 +17,9 @@ #include // strlen #include // mbtowc +#ifndef BOOST_NO_CWCHAR #include // wcslen +#endif #include #if defined(BOOST_NO_STDC_NAMESPACE) diff --git a/include/boost/archive/iterators/mb_from_wchar.hpp b/include/boost/archive/iterators/mb_from_wchar.hpp index b6dc9b21..05df71c2 100644 --- a/include/boost/archive/iterators/mb_from_wchar.hpp +++ b/include/boost/archive/iterators/mb_from_wchar.hpp @@ -18,8 +18,9 @@ #include #include // size_t +#ifndef BOOST_NO_CWCHAR #include // mbstate_t - +#endif #include #if defined(BOOST_NO_STDC_NAMESPACE) namespace std{ diff --git a/include/boost/archive/iterators/wchar_from_mb.hpp b/include/boost/archive/iterators/wchar_from_mb.hpp index 52a44bdc..2af8f640 100644 --- a/include/boost/archive/iterators/wchar_from_mb.hpp +++ b/include/boost/archive/iterators/wchar_from_mb.hpp @@ -19,7 +19,9 @@ #include #include #include // size_t +#ifndef BOOST_NO_CWCHAR #include // mbstate_t +#endif #include // copy #include diff --git a/include/boost/archive/wcslen.hpp b/include/boost/archive/wcslen.hpp index 2a3d6351..0b60004f 100644 --- a/include/boost/archive/wcslen.hpp +++ b/include/boost/archive/wcslen.hpp @@ -44,7 +44,9 @@ inline std::size_t wcslen(const wchar_t * ws) #else +#ifndef BOOST_NO_CWCHAR #include +#endif #ifdef BOOST_NO_STDC_NAMESPACE namespace std{ using ::wcslen; } #endif diff --git a/src/codecvt_null.cpp b/src/codecvt_null.cpp index 2f0115bf..5506348e 100644 --- a/src/codecvt_null.cpp +++ b/src/codecvt_null.cpp @@ -18,7 +18,7 @@ namespace boost { namespace archive { -BOOST_WARCHIVE_DECL std::codecvt_base::result +BOOST_WARCHIVE_DECL BOOST_DLLEXPORT std::codecvt_base::result codecvt_null::do_out( std::mbstate_t & /*state*/, const wchar_t * first1, @@ -46,7 +46,7 @@ codecvt_null::do_out( return std::codecvt_base::ok; } -BOOST_WARCHIVE_DECL std::codecvt_base::result +BOOST_WARCHIVE_DECL BOOST_DLLEXPORT std::codecvt_base::result codecvt_null::do_in( std::mbstate_t & /*state*/, const char * first1,