diff --git a/libcxx/include/__bsd_locale_fallbacks.h b/libcxx/include/__bsd_locale_fallbacks.h --- a/libcxx/include/__bsd_locale_fallbacks.h +++ b/libcxx/include/__bsd_locale_fallbacks.h @@ -23,6 +23,8 @@ _LIBCPP_BEGIN_NAMESPACE_STD +#ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS + inline _LIBCPP_INLINE_VISIBILITY decltype(MB_CUR_MAX) __libcpp_mb_cur_max_l(locale_t __l) { @@ -88,14 +90,14 @@ __libcpp_locale_guard __current(__l); return mbrlen(__s, __n, __ps); } - +#endif inline _LIBCPP_INLINE_VISIBILITY lconv *__libcpp_localeconv_l(locale_t __l) { __libcpp_locale_guard __current(__l); return localeconv(); } - +#ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS inline _LIBCPP_INLINE_VISIBILITY size_t __libcpp_mbsrtowcs_l(wchar_t *__dest, const char **__src, size_t __len, mbstate_t *__ps, locale_t __l) @@ -103,7 +105,7 @@ __libcpp_locale_guard __current(__l); return mbsrtowcs(__dest, __src, __len, __ps); } - +#endif inline int __libcpp_snprintf_l(char *__s, size_t __n, locale_t __l, const char *__format, ...) { va_list __va; diff --git a/libcxx/include/__mbstate_t.h b/libcxx/include/__mbstate_t.h --- a/libcxx/include/__mbstate_t.h +++ b/libcxx/include/__mbstate_t.h @@ -28,7 +28,7 @@ #ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS # include // for mbstate_t #else -# include // works on Darwin +# include // works on Linux #endif _LIBCPP_BEGIN_NAMESPACE_STD