Add std::is_constant_evaluated.

Clang recently added __builtin_is_constant_evaluated() and GCC 9.0
has it as well.

This patch adds support for it in libc++.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@359119 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Eric Fiselier
2019-04-24 17:54:25 +00:00
parent ef08906314
commit 250205c9d2
10 changed files with 103 additions and 10 deletions

View File

@@ -525,7 +525,8 @@ feature_test_macros = sorted([ add_version_header(x) for x in [
"c++2a": 201811L,
},
"headers": ["type_traits"],
"unimplemented": True,
"depends": "TEST_HAS_BUILTIN(__builtin_is_constant_evaluated) || TEST_GCC_VER >= 900",
"internal_depends": "!defined(_LIBCPP_HAS_NO_BUILTIN_IS_CONSTANT_EVALUATED)",
},
{"name": "__cpp_lib_list_remove_return_type",
"values": {