[libcxx-commits] [libcxx] 7656dd3 - [libc++] NFC: Reindent the feature test macro generation script
Louis Dionne via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Sep 22 14:40:30 PDT 2020
Author: Louis Dionne
Date: 2020-09-22T17:40:14-04:00
New Revision: 7656dd33d9326df0b86f08676474dbf8055866b8
URL: https://github.com/llvm/llvm-project/commit/7656dd33d9326df0b86f08676474dbf8055866b8
DIFF: https://github.com/llvm/llvm-project/commit/7656dd33d9326df0b86f08676474dbf8055866b8.diff
LOG: [libc++] NFC: Reindent the feature test macro generation script
Each feature-test macro is now a clear block indentation-wise.
Added:
Modified:
libcxx/utils/generate_feature_test_macro_components.py
Removed:
################################################################################
diff --git a/libcxx/utils/generate_feature_test_macro_components.py b/libcxx/utils/generate_feature_test_macro_components.py
index 1547443cffea..889eabff8b6e 100755
--- a/libcxx/utils/generate_feature_test_macro_components.py
+++ b/libcxx/utils/generate_feature_test_macro_components.py
@@ -33,641 +33,452 @@ def add_version_header(tc):
feature_test_macros = sorted([ add_version_header(x) for x in [
# C++14 macros
- {"name": "__cpp_lib_integer_sequence",
- "values": {
- "c++14": int(201304)
- },
+ {
+ "name": "__cpp_lib_integer_sequence",
+ "values": { "c++14": int(201304) },
"headers": ["utility"],
- },
- {"name": "__cpp_lib_exchange_function",
- "values": {
- "c++14": int(201304)
- },
- "headers": ["utility"],
- },
- {"name": "__cpp_lib_tuples_by_type",
- "values": {
- "c++14": int(201304)
- },
- "headers": ["utility", "tuple"],
- },
- {"name": "__cpp_lib_tuple_element_t",
- "values": {
- "c++14": int(201402)
- },
- "headers": ["tuple"],
- },
- {"name": "__cpp_lib_make_unique",
- "values": {
- "c++14": int(201304)
- },
- "headers": ["memory"],
- },
- {"name": "__cpp_lib_transparent_operators",
- "values": {
- "c++14": int(201210),
- "c++17": int(201510),
- },
- "headers": ["functional"],
- },
- {"name": "__cpp_lib_integral_constant_callable",
- "values": {
- "c++14": int(201304)
- },
- "headers": ["type_traits"],
- },
- {"name": "__cpp_lib_transformation_trait_aliases",
- "values": {
- "c++14": int(201304),
- },
- "headers": ["type_traits"]
- },
- {"name": "__cpp_lib_result_of_sfinae",
- "values": {
- "c++14": int(201210),
- },
- "headers": ["functional", "type_traits"]
- },
- {"name": "__cpp_lib_is_final",
- "values": {
- "c++14": int(201402),
- },
- "headers": ["type_traits"]
- },
- {"name": "__cpp_lib_is_null_pointer",
- "values": {
- "c++14": int(201309),
- },
- "headers": ["type_traits"]
- },
- {"name": "__cpp_lib_chrono_udls",
- "values": {
- "c++14": int(201304),
- },
- "headers": ["chrono"]
- },
- {"name": "__cpp_lib_string_udls",
- "values": {
- "c++14": int(201304),
- },
- "headers": ["string"]
- },
- {"name": "__cpp_lib_generic_associative_lookup",
- "values": {
- "c++14": int(201304),
- },
- "headers": ["map", "set"]
- },
- {"name": "__cpp_lib_null_iterators",
- "values": {
- "c++14": int(201304),
- },
- "headers": ["iterator"]
- },
- {"name": "__cpp_lib_make_reverse_iterator",
- "values": {
- "c++14": int(201402),
- },
- "headers": ["iterator"]
- },
- {"name": "__cpp_lib_robust_nonmodifying_seq_ops",
- "values": {
- "c++14": int(201304),
- },
- "headers": ["algorithm"]
- },
- {"name": "__cpp_lib_complex_udls",
- "values": {
- "c++14": int(201309),
- },
- "headers": ["complex"]
- },
- {"name": "__cpp_lib_quoted_string_io",
- "values": {
- "c++14": int(201304),
- },
- "headers": ["iomanip"]
- },
- {"name": "__cpp_lib_shared_timed_mutex",
- "values": {
- "c++14": int(201402),
- },
- "headers": ["shared_mutex"],
- "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ }, {
+ "name": "__cpp_lib_exchange_function",
+ "values": { "c++14": int(201304) },
+ "headers": ["utility"],
+ }, {
+ "name": "__cpp_lib_tuples_by_type",
+ "values": { "c++14": int(201304) },
+ "headers": ["utility", "tuple"],
+ }, {
+ "name": "__cpp_lib_tuple_element_t",
+ "values": { "c++14": int(201402) },
+ "headers": ["tuple"],
+ }, {
+ "name": "__cpp_lib_make_unique",
+ "values": { "c++14": int(201304) },
+ "headers": ["memory"],
+ }, {
+ "name": "__cpp_lib_transparent_operators",
+ "values": { "c++14": int(201210), "c++17": int(201510) },
+ "headers": ["functional"],
+ }, {
+ "name": "__cpp_lib_integral_constant_callable",
+ "values": { "c++14": int(201304) },
+ "headers": ["type_traits"],
+ }, {
+ "name": "__cpp_lib_transformation_trait_aliases",
+ "values": { "c++14": int(201304) },
+ "headers": ["type_traits"]
+ }, {
+ "name": "__cpp_lib_result_of_sfinae",
+ "values": { "c++14": int(201210) },
+ "headers": ["functional", "type_traits"]
+ }, {
+ "name": "__cpp_lib_is_final",
+ "values": { "c++14": int(201402) },
+ "headers": ["type_traits"]
+ }, {
+ "name": "__cpp_lib_is_null_pointer",
+ "values": { "c++14": int(201309) },
+ "headers": ["type_traits"]
+ }, {
+ "name": "__cpp_lib_chrono_udls",
+ "values": { "c++14": int(201304) },
+ "headers": ["chrono"]
+ }, {
+ "name": "__cpp_lib_string_udls",
+ "values": { "c++14": int(201304) },
+ "headers": ["string"]
+ }, {
+ "name": "__cpp_lib_generic_associative_lookup",
+ "values": { "c++14": int(201304) },
+ "headers": ["map", "set"]
+ }, {
+ "name": "__cpp_lib_null_iterators",
+ "values": { "c++14": int(201304) },
+ "headers": ["iterator"]
+ }, {
+ "name": "__cpp_lib_make_reverse_iterator",
+ "values": { "c++14": int(201402) },
+ "headers": ["iterator"]
+ }, {
+ "name": "__cpp_lib_robust_nonmodifying_seq_ops",
+ "values": { "c++14": int(201304) },
+ "headers": ["algorithm"]
+ }, {
+ "name": "__cpp_lib_complex_udls",
+ "values": { "c++14": int(201309) },
+ "headers": ["complex"]
+ }, {
+ "name": "__cpp_lib_quoted_string_io",
+ "values": { "c++14": int(201304) },
+ "headers": ["iomanip"]
+ }, {
+ "name": "__cpp_lib_shared_timed_mutex",
+ "values": { "c++14": int(201402) },
+ "headers": ["shared_mutex"],
+ "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
},
# C++17 macros
- {"name": "__cpp_lib_atomic_is_always_lock_free",
- "values": {
- "c++17": int(201603),
- },
- "headers": ["atomic"],
- "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- },
- {"name": "__cpp_lib_filesystem",
- "values": {
- "c++17": int(201703),
- },
- "headers": ["filesystem"]
- },
- {"name": "__cpp_lib_invoke",
- "values": {
- "c++17": int(201411),
- },
- "headers": ["functional"]
- },
- {"name": "__cpp_lib_void_t",
- "values": {
- "c++17": int(201411),
- },
- "headers": ["type_traits"]
- },
- {"name": "__cpp_lib_node_extract",
- "values": {
- "c++17": int(201606),
- },
- "headers": ["map", "set", "unordered_map", "unordered_set"]
- },
- {"name": "__cpp_lib_byte",
- "values": {
- "c++17": int(201603),
- },
- "headers": ["cstddef"],
- },
- {"name": "__cpp_lib_hardware_interference_size",
- "values": {
- "c++17": int(201703),
- },
- "headers": ["new"],
- "unimplemented": True,
- },
- {"name": "__cpp_lib_launder",
- "values": {
- "c++17": int(201606),
- },
- "headers": ["new"],
- },
- {"name": "__cpp_lib_uncaught_exceptions",
- "values": {
- "c++17": int(201411),
- },
- "headers": ["exception"],
- },
- {"name": "__cpp_lib_as_const",
- "values": {
- "c++17": int(201510),
- },
- "headers": ["utility"],
- },
- {"name": "__cpp_lib_make_from_tuple",
- "values": {
- "c++17": int(201606),
- },
- "headers": ["tuple"],
- },
- {"name": "__cpp_lib_apply",
- "values": {
- "c++17": int(201603),
- },
- "headers": ["tuple"],
- },
- {"name": "__cpp_lib_optional",
- "values": {
- "c++17": int(201606),
- },
- "headers": ["optional"],
- },
- {"name": "__cpp_lib_variant",
- "values": {
- "c++17": int(201606),
- },
- "headers": ["variant"],
- },
- {"name": "__cpp_lib_any",
- "values": {
- "c++17": int(201606),
- },
- "headers": ["any"],
- },
- {"name": "__cpp_lib_addressof_constexpr",
- "values": {
- "c++17": int(201603),
- },
- "headers": ["memory"],
- "depends": "TEST_HAS_BUILTIN(__builtin_addressof) || TEST_GCC_VER >= 700",
- "internal_depends": "!defined(_LIBCPP_HAS_NO_BUILTIN_ADDRESSOF)",
- },
- {"name": "__cpp_lib_raw_memory_algorithms",
- "values": {
- "c++17": int(201606),
- },
- "headers": ["memory"],
- },
- {"name": "__cpp_lib_enable_shared_from_this",
- "values": {
- "c++17": int(201603),
- },
- "headers": ["memory"],
- },
- {"name": "__cpp_lib_shared_ptr_weak_type",
- "values": {
- "c++17": int(201606),
- },
- "headers": ["memory"],
- },
- {"name": "__cpp_lib_shared_ptr_arrays",
- "values": {
- "c++17": int(201611),
- },
- "headers": ["memory"],
- "unimplemented": True,
- },
- {"name": "__cpp_lib_memory_resource",
- "values": {
- "c++17": int(201603),
- },
- "headers": ["memory_resource"],
- "unimplemented": True,
- },
- {"name": "__cpp_lib_boyer_moore_searcher",
- "values": {
- "c++17": int(201603),
- },
- "headers": ["functional"],
- "unimplemented": True,
- },
- {"name": "__cpp_lib_not_fn",
- "values": {
- "c++17": int(201603),
- },
- "headers": ["functional"],
- },
- {"name": "__cpp_lib_bool_constant",
- "values": {
- "c++17": int(201505),
- },
- "headers": ["type_traits"],
- },
- {"name": "__cpp_lib_type_trait_variable_templates",
- "values": {
- "c++17": int(201510),
- },
- "headers": ["type_traits"],
- },
- {"name": "__cpp_lib_logical_traits",
- "values": {
- "c++17": int(201510),
- },
- "headers": ["type_traits"],
- },
- {"name": "__cpp_lib_is_swappable",
- "values": {
- "c++17": int(201603),
- },
- "headers": ["type_traits"],
- },
- {"name": "__cpp_lib_is_invocable",
- "values": {
- "c++17": int(201703),
- },
- "headers": ["type_traits"],
- },
- {"name": "__cpp_lib_has_unique_object_representations",
- "values": {
- "c++17": int(201606),
- },
- "headers": ["type_traits"],
- "depends": "TEST_HAS_BUILTIN_IDENTIFIER(__has_unique_object_representations) || TEST_GCC_VER >= 700",
- "internal_depends": "defined(_LIBCPP_HAS_UNIQUE_OBJECT_REPRESENTATIONS)",
- },
- {"name": "__cpp_lib_is_aggregate",
- "values": {
- "c++17": int(201703),
- },
- "headers": ["type_traits"],
- "depends": "TEST_HAS_BUILTIN_IDENTIFIER(__is_aggregate) || TEST_GCC_VER_NEW >= 7001",
- "internal_depends": "!defined(_LIBCPP_HAS_NO_IS_AGGREGATE)",
- },
- {"name": "__cpp_lib_chrono",
- "values": {
- "c++17": int(201611),
- },
- "headers": ["chrono"],
- },
- {"name": "__cpp_lib_execution",
- "values": {
- "c++17": int(201603),
- },
- "headers": ["execution"],
- "unimplemented": True
- },
- {"name": "__cpp_lib_parallel_algorithm",
- "values": {
- "c++17": int(201603),
- },
- "headers": ["algorithm", "numeric"],
- "unimplemented": True,
- },
- {"name": "__cpp_lib_to_chars",
- "values": {
- "c++17": int(201611),
- },
- "headers": ["utility"],
- "unimplemented": True,
- },
- {"name": "__cpp_lib_string_view",
- "values": {
- "c++17": int(201606),
- },
- "headers": ["string", "string_view"],
- },
- {"name": "__cpp_lib_allocator_traits_is_always_equal",
- "values": {
- "c++17": int(201411),
- },
- "headers": ["memory", "scoped_allocator", "string", "deque", "forward_list", "list", "vector", "map", "set", "unordered_map", "unordered_set"],
- },
- {"name": "__cpp_lib_incomplete_container_elements",
- "values": {
- "c++17": int(201505),
- },
- "headers": ["forward_list", "list", "vector"],
- },
- {"name": "__cpp_lib_map_try_emplace",
- "values": {
- "c++17": int(201411),
- },
- "headers": ["map"],
- },
- {"name": "__cpp_lib_unordered_map_try_emplace",
- "values": {
- "c++17": int(201411),
- },
- "headers": ["unordered_map"],
- },
- {"name": "__cpp_lib_array_constexpr",
- "values": {
- "c++17": int(201603),
- "c++2a": int(201811),
- },
- "headers": ["iterator", "array"],
- },
- {"name": "__cpp_lib_nonmember_container_access",
- "values": {
- "c++17": int(201411),
- },
- "headers": ["iterator", "array", "deque", "forward_list", "list", "map", "regex",
- "set", "string", "unordered_map", "unordered_set", "vector"],
- },
- {"name": "__cpp_lib_sample",
- "values": {
- "c++17": int(201603),
- },
- "headers": ["algorithm"],
- },
- {"name": "__cpp_lib_clamp",
- "values": {
- "c++17": int(201603),
- },
- "headers": ["algorithm"],
- },
- {"name": "__cpp_lib_gcd_lcm",
- "values": {
- "c++17": int(201606),
- },
- "headers": ["numeric"],
- },
- {"name": "__cpp_lib_hypot",
- "values": {
- "c++17": int(201603),
- },
- "headers": ["cmath"],
- },
- {"name": "__cpp_lib_math_special_functions",
- "values": {
- "c++17": int(201603),
- },
- "headers": ["cmath"],
- "unimplemented": True,
- },
- {"name": "__cpp_lib_shared_mutex",
- "values": {
- "c++17": int(201505),
- },
- "headers": ["shared_mutex"],
- "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- },
- {"name": "__cpp_lib_scoped_lock",
- "values": {
- "c++17": int(201703),
- },
- "headers": ["mutex"],
+ {
+ "name": "__cpp_lib_atomic_is_always_lock_free",
+ "values": { "c++17": int(201603) },
+ "headers": ["atomic"],
+ "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ }, {
+ "name": "__cpp_lib_filesystem",
+ "values": { "c++17": int(201703) },
+ "headers": ["filesystem"]
+ }, {
+ "name": "__cpp_lib_invoke",
+ "values": { "c++17": int(201411) },
+ "headers": ["functional"]
+ }, {
+ "name": "__cpp_lib_void_t",
+ "values": { "c++17": int(201411) },
+ "headers": ["type_traits"]
+ }, {
+ "name": "__cpp_lib_node_extract",
+ "values": { "c++17": int(201606) },
+ "headers": ["map", "set", "unordered_map", "unordered_set"]
+ }, {
+ "name": "__cpp_lib_byte",
+ "values": { "c++17": int(201603) },
+ "headers": ["cstddef"],
+ }, {
+ "name": "__cpp_lib_hardware_interference_size",
+ "values": { "c++17": int(201703) },
+ "headers": ["new"],
+ "unimplemented": True,
+ }, {
+ "name": "__cpp_lib_launder",
+ "values": { "c++17": int(201606) },
+ "headers": ["new"],
+ }, {
+ "name": "__cpp_lib_uncaught_exceptions",
+ "values": { "c++17": int(201411) },
+ "headers": ["exception"],
+ }, {
+ "name": "__cpp_lib_as_const",
+ "values": { "c++17": int(201510) },
+ "headers": ["utility"],
+ }, {
+ "name": "__cpp_lib_make_from_tuple",
+ "values": { "c++17": int(201606) },
+ "headers": ["tuple"],
+ }, {
+ "name": "__cpp_lib_apply",
+ "values": { "c++17": int(201603) },
+ "headers": ["tuple"],
+ }, {
+ "name": "__cpp_lib_optional",
+ "values": { "c++17": int(201606) },
+ "headers": ["optional"],
+ }, {
+ "name": "__cpp_lib_variant",
+ "values": { "c++17": int(201606) },
+ "headers": ["variant"],
+ }, {
+ "name": "__cpp_lib_any",
+ "values": { "c++17": int(201606) },
+ "headers": ["any"],
+ }, {
+ "name": "__cpp_lib_addressof_constexpr",
+ "values": { "c++17": int(201603) },
+ "headers": ["memory"],
+ "depends": "TEST_HAS_BUILTIN(__builtin_addressof) || TEST_GCC_VER >= 700",
+ "internal_depends": "!defined(_LIBCPP_HAS_NO_BUILTIN_ADDRESSOF)",
+ }, {
+ "name": "__cpp_lib_raw_memory_algorithms",
+ "values": { "c++17": int(201606) },
+ "headers": ["memory"],
+ }, {
+ "name": "__cpp_lib_enable_shared_from_this",
+ "values": { "c++17": int(201603) },
+ "headers": ["memory"],
+ }, {
+ "name": "__cpp_lib_shared_ptr_weak_type",
+ "values": { "c++17": int(201606) },
+ "headers": ["memory"],
+ }, {
+ "name": "__cpp_lib_shared_ptr_arrays",
+ "values": { "c++17": int(201611) },
+ "headers": ["memory"],
+ "unimplemented": True,
+ }, {
+ "name": "__cpp_lib_memory_resource",
+ "values": { "c++17": int(201603) },
+ "headers": ["memory_resource"],
+ "unimplemented": True,
+ }, {
+ "name": "__cpp_lib_boyer_moore_searcher",
+ "values": { "c++17": int(201603) },
+ "headers": ["functional"],
+ "unimplemented": True,
+ }, {
+ "name": "__cpp_lib_not_fn",
+ "values": { "c++17": int(201603) },
+ "headers": ["functional"],
+ }, {
+ "name": "__cpp_lib_bool_constant",
+ "values": { "c++17": int(201505) },
+ "headers": ["type_traits"],
+ }, {
+ "name": "__cpp_lib_type_trait_variable_templates",
+ "values": { "c++17": int(201510) },
+ "headers": ["type_traits"],
+ }, {
+ "name": "__cpp_lib_logical_traits",
+ "values": { "c++17": int(201510) },
+ "headers": ["type_traits"],
+ }, {
+ "name": "__cpp_lib_is_swappable",
+ "values": { "c++17": int(201603) },
+ "headers": ["type_traits"],
+ }, {
+ "name": "__cpp_lib_is_invocable",
+ "values": { "c++17": int(201703) },
+ "headers": ["type_traits"],
+ }, {
+ "name": "__cpp_lib_has_unique_object_representations",
+ "values": { "c++17": int(201606) },
+ "headers": ["type_traits"],
+ "depends": "TEST_HAS_BUILTIN_IDENTIFIER(__has_unique_object_representations) || TEST_GCC_VER >= 700",
+ "internal_depends": "defined(_LIBCPP_HAS_UNIQUE_OBJECT_REPRESENTATIONS)",
+ }, {
+ "name": "__cpp_lib_is_aggregate",
+ "values": { "c++17": int(201703) },
+ "headers": ["type_traits"],
+ "depends": "TEST_HAS_BUILTIN_IDENTIFIER(__is_aggregate) || TEST_GCC_VER_NEW >= 7001",
+ "internal_depends": "!defined(_LIBCPP_HAS_NO_IS_AGGREGATE)",
+ }, {
+ "name": "__cpp_lib_chrono",
+ "values": { "c++17": int(201611) },
+ "headers": ["chrono"],
+ }, {
+ "name": "__cpp_lib_execution",
+ "values": { "c++17": int(201603) },
+ "headers": ["execution"],
+ "unimplemented": True
+ }, {
+ "name": "__cpp_lib_parallel_algorithm",
+ "values": { "c++17": int(201603) },
+ "headers": ["algorithm", "numeric"],
+ "unimplemented": True,
+ }, {
+ "name": "__cpp_lib_to_chars",
+ "values": { "c++17": int(201611) },
+ "headers": ["utility"],
+ "unimplemented": True,
+ }, {
+ "name": "__cpp_lib_string_view",
+ "values": { "c++17": int(201606) },
+ "headers": ["string", "string_view"],
+ }, {
+ "name": "__cpp_lib_allocator_traits_is_always_equal",
+ "values": { "c++17": int(201411) },
+ "headers": ["memory", "scoped_allocator", "string", "deque", "forward_list", "list", "vector", "map", "set", "unordered_map", "unordered_set"],
+ }, {
+ "name": "__cpp_lib_incomplete_container_elements",
+ "values": { "c++17": int(201505) },
+ "headers": ["forward_list", "list", "vector"],
+ }, {
+ "name": "__cpp_lib_map_try_emplace",
+ "values": { "c++17": int(201411) },
+ "headers": ["map"],
+ }, {
+ "name": "__cpp_lib_unordered_map_try_emplace",
+ "values": { "c++17": int(201411) },
+ "headers": ["unordered_map"],
+ }, {
+ "name": "__cpp_lib_array_constexpr",
+ "values": { "c++17": int(201603), "c++2a": int(201811) },
+ "headers": ["iterator", "array"],
+ }, {
+ "name": "__cpp_lib_nonmember_container_access",
+ "values": { "c++17": int(201411) },
+ "headers": ["iterator", "array", "deque", "forward_list", "list", "map", "regex",
+ "set", "string", "unordered_map", "unordered_set", "vector"],
+ }, {
+ "name": "__cpp_lib_sample",
+ "values": { "c++17": int(201603) },
+ "headers": ["algorithm"],
+ }, {
+ "name": "__cpp_lib_clamp",
+ "values": { "c++17": int(201603) },
+ "headers": ["algorithm"],
+ }, {
+ "name": "__cpp_lib_gcd_lcm",
+ "values": { "c++17": int(201606) },
+ "headers": ["numeric"],
+ }, {
+ "name": "__cpp_lib_hypot",
+ "values": { "c++17": int(201603) },
+ "headers": ["cmath"],
+ }, {
+ "name": "__cpp_lib_math_special_functions",
+ "values": { "c++17": int(201603) },
+ "headers": ["cmath"],
+ "unimplemented": True,
+ }, {
+ "name": "__cpp_lib_shared_mutex",
+ "values": { "c++17": int(201505) },
+ "headers": ["shared_mutex"],
+ "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ }, {
+ "name": "__cpp_lib_scoped_lock",
+ "values": { "c++17": int(201703) },
+ "headers": ["mutex"],
},
# C++2a
- {"name": "__cpp_lib_char8_t",
- "values": {
- "c++2a": int(201811),
- },
- "headers": ["atomic", "filesystem", "istream", "limits", "locale", "ostream",
- "string", "string_view"],
- "depends": "defined(__cpp_char8_t)",
- "internal_depends": "!defined(_LIBCPP_NO_HAS_CHAR8_T)",
- },
- {"name": "__cpp_lib_erase_if",
- "values": {
- "c++2a": int(202002),
- },
- "headers": ["string", "deque", "forward_list", "list", "vector", "map",
- "set", "unordered_map", "unordered_set"]
- },
- {"name": "__cpp_lib_destroying_delete",
- "values": {
- "c++2a": int(201806),
- },
- "headers": ["new"],
- "depends":
+ {
+ "name": "__cpp_lib_char8_t",
+ "values": { "c++2a": int(201811) },
+ "headers": ["atomic", "filesystem", "istream", "limits", "locale", "ostream",
+ "string", "string_view"],
+ "depends": "defined(__cpp_char8_t)",
+ "internal_depends": "!defined(_LIBCPP_NO_HAS_CHAR8_T)",
+ }, {
+ "name": "__cpp_lib_erase_if",
+ "values": { "c++2a": int(202002) },
+ "headers": ["string", "deque", "forward_list", "list", "vector", "map",
+ "set", "unordered_map", "unordered_set"]
+ }, {
+ "name": "__cpp_lib_destroying_delete",
+ "values": { "c++2a": int(201806) },
+ "headers": ["new"],
+ "depends":
"TEST_STD_VER > 17"
" && defined(__cpp_impl_destroying_delete)"
" && __cpp_impl_destroying_delete >= 201806L",
- "internal_depends":
+ "internal_depends":
"_LIBCPP_STD_VER > 17"
" && defined(__cpp_impl_destroying_delete)"
" && __cpp_impl_destroying_delete >= 201806L",
- },
- {"name": "__cpp_lib_three_way_comparison",
- "values": {
- "c++2a": int(201711),
- },
- "headers": ["compare"],
- "unimplemented": True,
- },
- {"name": "__cpp_lib_concepts",
- "values": {
- "c++2a": int(201806),
- },
- "headers": ["concepts"],
- "unimplemented": True,
- },
- {"name": "__cpp_lib_constexpr_swap_algorithms",
- "values": {
- "c++2a": int(201806),
- },
- "headers": ["algorithm"],
- "unimplemented": True,
- },
- {"name": "__cpp_lib_constexpr_misc",
- "values": {
- "c++2a": int(201811),
- },
- "headers": ["array", "functional", "iterator", "string_view", "tuple", "utility"],
- "unimplemented": True,
- },
- {"name": "__cpp_lib_bind_front",
- "values": {
- "c++2a": int(201811),
- },
- "headers": ["functional"],
- "unimplemented": True,
- },
- {"name": "__cpp_lib_is_constant_evaluated",
- "values": {
- "c++2a": int(201811),
- },
- "headers": ["type_traits"],
- "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": {
- "c++2a": int(201806),
- },
- "headers": ["forward_list", "list"],
- },
- {"name": "__cpp_lib_generic_unordered_lookup",
- "values": {
- "c++2a": int(201811),
- },
- "headers": ["unordered_map", "unordered_set"],
- "unimplemented": True,
- },
- {"name": "__cpp_lib_ranges",
- "values": {
- "c++2a": int(201811),
- },
- "headers": ["algorithm", "functional", "iterator", "memory", "ranges"],
- "unimplemented": True,
- },
- {"name": "__cpp_lib_bit_cast",
- "values": {
- "c++2a": int(201806),
- },
- "headers": ["bit"],
- "unimplemented": True,
- },
- {"name": "__cpp_lib_atomic_ref",
- "values": {
- "c++2a": int(201806),
- },
- "headers": ["atomic"],
- "unimplemented": True,
- "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- },
- {"name": "__cpp_lib_interpolate",
- "values": {
- "c++2a": int(201902),
- },
- "headers": ["numeric"],
- },
- {"name": "__cpp_lib_endian",
- "values": {
- "c++2a": int(201907),
- },
- "headers": ["bit"],
- },
- {"name": "__cpp_lib_to_array",
- "values": {
- "c++2a": int(201907),
- },
- "headers": ["array"],
- },
- {"name": "__cpp_lib_span",
- "values": {
- "c++2a": int(202002),
- },
- "headers": ["span"],
- },
- {"name": "__cpp_lib_math_constants",
- "values": {
- "c++2a": int(201907),
- },
- "headers": ["numbers"],
- "depends": "defined(__cpp_concepts) && __cpp_concepts >= 201811L",
- "internal_depends": "defined(__cpp_concepts) && __cpp_concepts >= 201811L",
- },
- {"name": "__cpp_lib_constexpr_utility",
- "values": {
- "c++2a": int(201811),
- },
- "headers": ["utility"],
- },
- {"name": "__cpp_lib_atomic_flag_test",
- "values": {
- "c++2a": int(201907),
- },
- "headers": ["atomic"],
- "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- },
- {"name": "__cpp_lib_atomic_lock_free_type_aliases",
- "values": {
- "c++2a": int(201907),
- },
- "headers": ["atomic"],
- "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- },
- {"name": "__cpp_lib_atomic_wait",
- "values": {
- "c++2a": int(201907),
- },
- "headers": ["atomic"],
- "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- },
- {"name": "__cpp_lib_atomic_float",
- "values": {
- "c++2a": int(201711),
- },
- "headers": ["atomic"],
- "unimplemented": True,
- "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- },
- {"name": "__cpp_lib_atomic_shared_ptr",
- "values": {
- "c++2a": int(201711),
- },
- "headers": ["atomic"],
- "unimplemented": True,
- "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- },
- {"name": "__cpp_lib_atomic_value_initialization",
- "values": {
- "c++2a": int(201911),
- },
- "headers": ["atomic", "memory"],
- "unimplemented": True,
- "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
- },
- {"name": "__cpp_lib_constexpr_dynamic_alloc",
- "values": {
- "c++2a": int(201907)
- },
+ }, {
+ "name": "__cpp_lib_three_way_comparison",
+ "values": { "c++2a": int(201711) },
+ "headers": ["compare"],
+ "unimplemented": True,
+ }, {
+ "name": "__cpp_lib_concepts",
+ "values": { "c++2a": int(201806) },
+ "headers": ["concepts"],
+ "unimplemented": True,
+ }, {
+ "name": "__cpp_lib_constexpr_swap_algorithms",
+ "values": { "c++2a": int(201806) },
+ "headers": ["algorithm"],
+ "unimplemented": True,
+ }, {
+ "name": "__cpp_lib_constexpr_misc",
+ "values": { "c++2a": int(201811) },
+ "headers": ["array", "functional", "iterator", "string_view", "tuple", "utility"],
+ "unimplemented": True,
+ }, {
+ "name": "__cpp_lib_bind_front",
+ "values": { "c++2a": int(201811) },
+ "headers": ["functional"],
+ "unimplemented": True,
+ }, {
+ "name": "__cpp_lib_is_constant_evaluated",
+ "values": { "c++2a": int(201811) },
+ "headers": ["type_traits"],
+ "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": { "c++2a": int(201806) },
+ "headers": ["forward_list", "list"],
+ }, {
+ "name": "__cpp_lib_generic_unordered_lookup",
+ "values": { "c++2a": int(201811) },
+ "headers": ["unordered_map", "unordered_set"],
+ "unimplemented": True,
+ }, {
+ "name": "__cpp_lib_ranges",
+ "values": { "c++2a": int(201811) },
+ "headers": ["algorithm", "functional", "iterator", "memory", "ranges"],
+ "unimplemented": True,
+ }, {
+ "name": "__cpp_lib_bit_cast",
+ "values": { "c++2a": int(201806) },
+ "headers": ["bit"],
+ "unimplemented": True,
+ }, {
+ "name": "__cpp_lib_atomic_ref",
+ "values": { "c++2a": int(201806) },
+ "headers": ["atomic"],
+ "unimplemented": True,
+ "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ }, {
+ "name": "__cpp_lib_interpolate",
+ "values": { "c++2a": int(201902) },
+ "headers": ["numeric"],
+ }, {
+ "name": "__cpp_lib_endian",
+ "values": { "c++2a": int(201907) },
+ "headers": ["bit"],
+ }, {
+ "name": "__cpp_lib_to_array",
+ "values": { "c++2a": int(201907) },
+ "headers": ["array"],
+ }, {
+ "name": "__cpp_lib_span",
+ "values": { "c++2a": int(202002) },
+ "headers": ["span"],
+ }, {
+ "name": "__cpp_lib_math_constants",
+ "values": { "c++2a": int(201907) },
+ "headers": ["numbers"],
+ "depends": "defined(__cpp_concepts) && __cpp_concepts >= 201811L",
+ "internal_depends": "defined(__cpp_concepts) && __cpp_concepts >= 201811L",
+ }, {
+ "name": "__cpp_lib_constexpr_utility",
+ "values": { "c++2a": int(201811) },
+ "headers": ["utility"],
+ }, {
+ "name": "__cpp_lib_atomic_flag_test",
+ "values": { "c++2a": int(201907) },
+ "headers": ["atomic"],
+ "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ }, {
+ "name": "__cpp_lib_atomic_lock_free_type_aliases",
+ "values": { "c++2a": int(201907) },
+ "headers": ["atomic"],
+ "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ }, {
+ "name": "__cpp_lib_atomic_wait",
+ "values": { "c++2a": int(201907) },
+ "headers": ["atomic"],
+ "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ }, {
+ "name": "__cpp_lib_atomic_float",
+ "values": { "c++2a": int(201711) },
+ "headers": ["atomic"],
+ "unimplemented": True,
+ "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ }, {
+ "name": "__cpp_lib_atomic_shared_ptr",
+ "values": { "c++2a": int(201711) },
+ "headers": ["atomic"],
+ "unimplemented": True,
+ "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ }, {
+ "name": "__cpp_lib_atomic_value_initialization",
+ "values": { "c++2a": int(201911) },
+ "headers": ["atomic", "memory"],
+ "unimplemented": True,
+ "depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ "internal_depends": "!defined(_LIBCPP_HAS_NO_THREADS)",
+ }, {
+ "name": "__cpp_lib_constexpr_dynamic_alloc",
+ "values": { "c++2a": int(201907) },
"headers": ["memory"]
},
]], key=lambda tc: tc["name"])
More information about the libcxx-commits
mailing list