1
0
Fork 0

Bug fix/fix vs15.9 codecvt macro (#7328)

* Fix std::codecvt<charXX_t...> marco to be used with VS 15.9

* Extend MSVC2017_ONLY macro with VS 15.9 vesion
This commit is contained in:
KVS85 2018-11-15 00:13:49 +03:00 committed by Andrey Abramov
parent d9f0dcc82b
commit 8655a34239
3 changed files with 6 additions and 5 deletions

View File

@ -215,7 +215,8 @@
|| _MSC_VER == 1912 \
|| _MSC_VER == 1913 \
|| _MSC_VER == 1914 \
|| _MSC_VER == 1915)
|| _MSC_VER == 1915 \
|| _MSC_VER == 1916)
#define MSVC2017_ONLY(...) __VA_ARGS__
#else
#define MSVC2017_ONLY(...)

View File

@ -3671,7 +3671,7 @@ NS_BEGIN( locale_utils )
) {
return std::use_facet<std::codecvt<char32_t, char, mbstate_t>>(locale);
}
#elif defined(_MSC_VER) && _MSC_VER <= 1915 // MSVC2015/MSVC2017
#elif defined(_MSC_VER) && _MSC_VER <= 1916 // MSVC2015/MSVC2017
// MSVC2015/MSVC2017 implementations do not support char16_t/char32_t 'codecvt'
// due to a missing export, as per their comment:
// This is an active bug in our database (VSO#143857), which we'll investigate
@ -3773,4 +3773,4 @@ NS_END
// -----------------------------------------------------------------------------
// --SECTION-- END-OF-FILE
// -----------------------------------------------------------------------------
// -----------------------------------------------------------------------------

View File

@ -49,7 +49,7 @@ const std::codecvt<T, char, mbstate_t>& codecvt(std::locale const& locale) {
IRESEARCH_API const std::codecvt<char32_t, char, mbstate_t>& codecvt(
std::locale const& locale
);
#elif defined(_MSC_VER) && _MSC_VER <= 1915 // MSVC2015/MSVC2017
#elif defined(_MSC_VER) && _MSC_VER <= 1916 // MSVC2015/MSVC2017
// MSVC2015/MSVC2017 implementations do not support char16_t/char32_t 'codecvt'
// due to a missing export, as per their comment:
// This is an active bug in our database (VSO#143857), which we'll investigate
@ -110,4 +110,4 @@ IRESEARCH_API bool utf8(std::locale const& locale);
NS_END
NS_END
#endif
#endif