diff options
author | Bruno de Oliveira Abinader <bruno@mapbox.com> | 2017-07-11 17:42:50 +0300 |
---|---|---|
committer | Bruno de Oliveira Abinader <bruno@mapbox.com> | 2017-07-12 16:41:15 +0300 |
commit | cf67338bf7b7486545fc6edbecc1a625004c07e5 (patch) | |
tree | 53798af9915e2447d91333cf0876b3cbedbf9172 | |
parent | 54f8ec966c9c97543cf70dd6553473b26989efac (diff) | |
download | qtlocation-mapboxgl-cf67338bf7b7486545fc6edbecc1a625004c07e5.tar.gz |
[core] GCC 4.9 does not provide <codecvt>
-rw-r--r-- | platform/default/utf.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/platform/default/utf.cpp b/platform/default/utf.cpp index ba9678c91f..8fc44a9ed3 100644 --- a/platform/default/utf.cpp +++ b/platform/default/utf.cpp @@ -2,14 +2,24 @@ #include <memory> #include <locale> + +// GCC 4.9 compatibility +#if !defined(__GNUC__) || __GNUC__ >= 5 #include <codecvt> +#else +#include <boost/locale/encoding_utf.hpp> +#endif namespace mbgl { namespace util { std::u16string utf8_to_utf16::convert(std::string const& utf8) { +#if !defined(__GNUC__) || __GNUC__ >= 5 std::wstring_convert<std::codecvt_utf8_utf16<char16_t>, char16_t> converter; return converter.from_bytes(utf8); +#else + return boost::locale::conv::utf_to_utf<char16_t>(utf8.c_str(), utf8.c_str() + utf8.size()); +#endif } } // namespace util |