1 // -*- C++ -*-
2 //===---------------------- __bsd_locale_defaults.h -----------------------===//
3 //
4 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
5 // See https://llvm.org/LICENSE.txt for license information.
6 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //
8 //===----------------------------------------------------------------------===//
9 // The BSDs have lots of *_l functions.  We don't want to define those symbols
10 // on other platforms though, for fear of conflicts with user code.  So here,
11 // we will define the mapping from an internal macro to the real BSD symbol.
12 //===----------------------------------------------------------------------===//
13 
14 #ifndef _LIBCPP_BSD_LOCALE_DEFAULTS_H
15 #define _LIBCPP_BSD_LOCALE_DEFAULTS_H
16 
17 #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
18 #pragma GCC system_header
19 #endif
20 
21 #define __libcpp_mb_cur_max_l(loc)                          MB_CUR_MAX_L(loc)
22 #define __libcpp_btowc_l(ch, loc)                           btowc_l(ch, loc)
23 #define __libcpp_wctob_l(wch, loc)                          wctob_l(wch, loc)
24 #define __libcpp_wcsnrtombs_l(dst, src, nwc, len, ps, loc)  wcsnrtombs_l(dst, src, nwc, len, ps, loc)
25 #define __libcpp_wcrtomb_l(src, wc, ps, loc)                wcrtomb_l(src, wc, ps, loc)
26 #define __libcpp_mbsnrtowcs_l(dst, src, nms, len, ps, loc)  mbsnrtowcs_l(dst, src, nms, len, ps, loc)
27 #define __libcpp_mbrtowc_l(pwc, s, n, ps, l)                mbrtowc_l(pwc, s, n, ps, l)
28 #define __libcpp_mbtowc_l(pwc, pmb, max, l)                 mbtowc_l(pwc, pmb, max, l)
29 #define __libcpp_mbrlen_l(s, n, ps, l)                      mbrlen_l(s, n, ps, l)
30 #define __libcpp_localeconv_l(l)                            localeconv_l(l)
31 #define __libcpp_mbsrtowcs_l(dest, src, len, ps, l)         mbsrtowcs_l(dest, src, len, ps, l)
32 #define __libcpp_snprintf_l(...)                            snprintf_l(__VA_ARGS__)
33 #define __libcpp_asprintf_l(...)                            asprintf_l(__VA_ARGS__)
34 #define __libcpp_sscanf_l(...)                              sscanf_l(__VA_ARGS__)
35 
36 #endif // _LIBCPP_BSD_LOCALE_DEFAULTS_H
37