diff options
Diffstat (limited to 'libcxx/include/__config')
-rw-r--r-- | libcxx/include/__config | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libcxx/include/__config b/libcxx/include/__config index d7ecdcfc9cd..86413d566e9 100644 --- a/libcxx/include/__config +++ b/libcxx/include/__config @@ -100,6 +100,9 @@ #ifndef __is_identifier #define __is_identifier(__x) 1 #endif +#ifndef __has_declspec_attribute +#define __has_declspec_attribute(__x) 0 +#endif #define __has_keyword(__x) !(__is_identifier(__x)) @@ -1023,6 +1026,13 @@ _LIBCPP_FUNC_VIS extern "C" void __sanitizer_annotate_contiguous_container( # define _LIBCPP_DIAGNOSE_ERROR(...) #endif +#if defined(_LIBCPP_ABI_MICROSOFT) && \ + (defined(_LIBCPP_COMPILER_MSVC) || __has_declspec_attribute(empty_bases)) +# define _LIBCPP_DECLSPEC_EMPTY_BASES __declspec(empty_bases) +#else +# define _LIBCPP_DECLSPEC_EMPTY_BASES +#endif + #endif // __cplusplus #endif // _LIBCPP_CONFIG |