Skip to content

Commit cf90006

Browse files
committed
Pass by ref in localeconv to avoid copying, since Windows doesn't seem to like that
1 parent 5373c0a commit cf90006

File tree

3 files changed

+3
-3
lines changed

3 files changed

+3
-3
lines changed

libcxx/include/__locale_dir/locale_base_api.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ size_t __libcpp_mbsnrtowcs_l(wchar_t* dest, const char** src, size_t max_out, si
5454
size_t __libcpp_mbrtowc_l(wchar_t* dest, cosnt char* src, size_t count, mbstate_t*, locale_t);
5555
int __libcpp_mbtowc_l(wchar_t* dest, const char* src, size_t count, locale_t);
5656
size_t __libcpp_mbrlen_l(const char* str, size_t count, mbstate_t*, locale_t);
57-
lconv* __libcpp_localeconv_l(locale_t);
57+
lconv* __libcpp_localeconv_l(locale_t&);
5858
size_t __libcpp_mbsrtowcs_l(wchar_t* dest, const char** src, size_t len, mbstate_t*, locale_t);
5959
int __libcpp_snprintf_l(char* dest, size_t buff_size, locale_t, const char* format, ...);
6060
int __libcpp_asprintf_l(char** dest, locale_t, const char* format, ...);

libcxx/include/__locale_dir/locale_base_api/bsd_locale_defaults.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ inline _LIBCPP_HIDE_FROM_ABI size_t __libcpp_mbrlen_l(const char* __s, size_t __
7373
}
7474
#endif // _LIBCPP_HAS_NO_WIDE_CHARACTERS
7575

76-
inline _LIBCPP_HIDE_FROM_ABI lconv* __libcpp_localeconv_l(locale_t __loc) { return ::localeconv_l(__loc); }
76+
inline _LIBCPP_HIDE_FROM_ABI lconv* __libcpp_localeconv_l(locale_t& __loc) { return ::localeconv_l(__loc); }
7777

7878
#ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
7979
inline _LIBCPP_HIDE_FROM_ABI size_t

libcxx/include/__locale_dir/locale_base_api/bsd_locale_fallbacks.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ inline _LIBCPP_HIDE_FROM_ABI size_t __libcpp_mbrlen_l(const char* __s, size_t __
8080
}
8181
#endif // _LIBCPP_HAS_NO_WIDE_CHARACTERS
8282

83-
inline _LIBCPP_HIDE_FROM_ABI lconv* __libcpp_localeconv_l(locale_t __l) {
83+
inline _LIBCPP_HIDE_FROM_ABI lconv* __libcpp_localeconv_l(locale_t& __l) {
8484
__locale_guard __current(__l);
8585
return localeconv();
8686
}

0 commit comments

Comments
 (0)