Change _LIBCXX_CONSTEXPR_AFTER_CXX11 to check for c++14 constexpr rules
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@213225 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
9b2b60cab8
commit
8fcc27286f
@ -313,6 +313,10 @@ typedef __char32_t char32_t;
|
|||||||
#define _LIBCPP_HAS_NO_CONSTEXPR
|
#define _LIBCPP_HAS_NO_CONSTEXPR
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if !(__has_feature(cxx_relaxed_constexpr))
|
||||||
|
#define _LIBCPP_HAS_NO_CXX14_CONSTEXPR
|
||||||
|
#endif
|
||||||
|
|
||||||
#if __ISO_C_VISIBLE >= 2011 || __cplusplus >= 201103L
|
#if __ISO_C_VISIBLE >= 2011 || __cplusplus >= 201103L
|
||||||
#if defined(__FreeBSD__)
|
#if defined(__FreeBSD__)
|
||||||
#define _LIBCPP_HAS_QUICK_EXIT
|
#define _LIBCPP_HAS_QUICK_EXIT
|
||||||
@ -388,6 +392,9 @@ namespace std {
|
|||||||
#define _LIBCPP_HAS_NO_CONSTEXPR
|
#define _LIBCPP_HAS_NO_CONSTEXPR
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
// No version of GCC supports relaxed constexpr rules
|
||||||
|
#define _LIBCPP_HAS_NO_CXX14_CONSTEXPR
|
||||||
|
|
||||||
#define _NOEXCEPT throw()
|
#define _NOEXCEPT throw()
|
||||||
#define _NOEXCEPT_(x)
|
#define _NOEXCEPT_(x)
|
||||||
#define _NOEXCEPT_OR_FALSE(x) false
|
#define _NOEXCEPT_OR_FALSE(x) false
|
||||||
@ -457,6 +464,7 @@ using namespace _LIBCPP_NAMESPACE __attribute__((__strong__));
|
|||||||
#define _LIBCPP_HAS_NO_TEMPLATE_ALIASES
|
#define _LIBCPP_HAS_NO_TEMPLATE_ALIASES
|
||||||
#define _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER
|
#define _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER
|
||||||
#define _LIBCPP_HAS_NO_CONSTEXPR
|
#define _LIBCPP_HAS_NO_CONSTEXPR
|
||||||
|
#define _LIBCPP_HAS_NO_CXX14_CONSTEXPR
|
||||||
#define _LIBCPP_HAS_NO_UNICODE_CHARS
|
#define _LIBCPP_HAS_NO_UNICODE_CHARS
|
||||||
#define _LIBCPP_HAS_NO_DELETED_FUNCTIONS
|
#define _LIBCPP_HAS_NO_DELETED_FUNCTIONS
|
||||||
#define _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
|
#define _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
|
||||||
@ -648,15 +656,19 @@ template <unsigned> struct __static_assert_check {};
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if _LIBCPP_STD_VER <= 11
|
#if _LIBCPP_STD_VER <= 11
|
||||||
#define _LIBCPP_CONSTEXPR_AFTER_CXX11
|
|
||||||
#define _LIBCPP_EXPLICIT_AFTER_CXX11
|
#define _LIBCPP_EXPLICIT_AFTER_CXX11
|
||||||
#define _LIBCPP_DEPRECATED_AFTER_CXX11
|
#define _LIBCPP_DEPRECATED_AFTER_CXX11
|
||||||
#else
|
#else
|
||||||
#define _LIBCPP_CONSTEXPR_AFTER_CXX11 constexpr
|
|
||||||
#define _LIBCPP_EXPLICIT_AFTER_CXX11 explicit
|
#define _LIBCPP_EXPLICIT_AFTER_CXX11 explicit
|
||||||
#define _LIBCPP_DEPRECATED_AFTER_CXX11 [[deprecated]]
|
#define _LIBCPP_DEPRECATED_AFTER_CXX11 [[deprecated]]
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if _LIBCPP_STD_VER > 11 && !defined(_LIBCPP_HAS_NO_CXX14_CONSTEXPR)
|
||||||
|
#define _LIBCPP_CONSTEXPR_AFTER_CXX11 constexpr
|
||||||
|
#else
|
||||||
|
#define _LIBCPP_CONSTEXPR_AFTER_CXX11
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef _LIBCPP_HAS_NO_ASAN
|
#ifndef _LIBCPP_HAS_NO_ASAN
|
||||||
extern "C" void __sanitizer_annotate_contiguous_container(
|
extern "C" void __sanitizer_annotate_contiguous_container(
|
||||||
const void *, const void *, const void *, const void *);
|
const void *, const void *, const void *, const void *);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user