 |
Boost.Locale
|
7#ifndef BOOST_LOCALE_CONFIG_HPP_INCLUDED
8#define BOOST_LOCALE_CONFIG_HPP_INCLUDED
10#include <boost/config.hpp>
11#include <boost/config/workaround.hpp>
13# if __has_include(<version>)
18#if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_LOCALE_DYN_LINK)
19# ifdef BOOST_LOCALE_SOURCE
20# define BOOST_LOCALE_DECL BOOST_SYMBOL_EXPORT
22# define BOOST_LOCALE_DECL BOOST_SYMBOL_IMPORT
25# define BOOST_LOCALE_DECL
31#if !defined(BOOST_ALL_NO_LIB) && !defined(BOOST_LOCALE_NO_LIB) && !defined(BOOST_LOCALE_SOURCE)
36# define BOOST_LIB_NAME boost_locale
40# if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_LOCALE_DYN_LINK)
41# define BOOST_DYN_LINK
46# include <boost/config/auto_link.hpp>
52#if defined(BOOST_NO_CXX11_DEFAULTED_FUNCTIONS) || \
53 defined(BOOST_NO_CXX11_DEFAULTED_MOVES) || \
54 defined(BOOST_NO_CXX11_HDR_FUNCTIONAL) || \
55 defined(BOOST_NO_CXX11_HDR_TYPE_TRAITS) || \
56 defined(BOOST_NO_CXX11_NOEXCEPT) || \
57 defined(BOOST_NO_CXX11_OVERRIDE) || \
58 defined(BOOST_NO_CXX11_RVALUE_REFERENCES) || \
59 defined(BOOST_NO_CXX11_SMART_PTR) || \
60 defined(BOOST_NO_CXX11_STATIC_ASSERT)
62# error "Boost.Locale requires C++11 since Boost 1.81."
67# define BOOST_LOCALE_START_CONST_CONDITION __pragma(warning(push)) __pragma(warning(disable : 4127))
68# define BOOST_LOCALE_END_CONST_CONDITION __pragma(warning(pop))
70# define BOOST_LOCALE_START_CONST_CONDITION
71# define BOOST_LOCALE_END_CONST_CONDITION
75#if defined(BOOST_WINDOWS) || defined(__CYGWIN__)
77# define BOOST_LOCALE_USE_WIN32_API 1
79# define BOOST_LOCALE_USE_WIN32_API 0
83#if defined(__clang__) && defined(__has_attribute)
84# if __has_attribute(no_sanitize)
85# define BOOST_LOCALE_NO_SANITIZE(what) __attribute__((no_sanitize(what)))
88#if !defined(BOOST_LOCALE_NO_SANITIZE)
89# define BOOST_LOCALE_NO_SANITIZE(what)
92#if !defined(__cpp_lib_char8_t) || BOOST_WORKAROUND(BOOST_CLANG_VERSION, < 150000)
94# define BOOST_LOCALE_NO_CXX20_STRING8