tmp/tmpaemdfx4c/{from.md → to.md}
RENAMED
|
@@ -5,70 +5,94 @@ about the C++ standard library (e.g., version number and release date).
|
|
| 5 |
|
| 6 |
Each of the macros defined in `<version>` is also defined after
|
| 7 |
inclusion of any member of the set of library headers indicated in the
|
| 8 |
corresponding comment in this synopsis.
|
| 9 |
|
| 10 |
-
[*Note 1*: Future
|
| 11 |
-
|
| 12 |
|
| 13 |
``` cpp
|
| 14 |
#define __cpp_lib_addressof_constexpr 201603L // also in <memory>
|
|
|
|
|
|
|
|
|
|
| 15 |
#define __cpp_lib_allocator_traits_is_always_equal 201411L
|
| 16 |
// also in <memory>, <scoped_allocator>, <string>, <deque>, <forward_list>, <list>, <vector>,
|
| 17 |
// <map>, <set>, <unordered_map>, <unordered_set>
|
|
|
|
| 18 |
#define __cpp_lib_any 201606L // also in <any>
|
| 19 |
#define __cpp_lib_apply 201603L // also in <tuple>
|
| 20 |
#define __cpp_lib_array_constexpr 201811L // also in <iterator>, <array>
|
| 21 |
#define __cpp_lib_as_const 201510L // also in <utility>
|
|
|
|
|
|
|
| 22 |
#define __cpp_lib_assume_aligned 201811L // also in <memory>
|
| 23 |
#define __cpp_lib_atomic_flag_test 201907L // also in <atomic>
|
| 24 |
#define __cpp_lib_atomic_float 201711L // also in <atomic>
|
| 25 |
#define __cpp_lib_atomic_is_always_lock_free 201603L // also in <atomic>
|
| 26 |
#define __cpp_lib_atomic_lock_free_type_aliases 201907L // also in <atomic>
|
| 27 |
#define __cpp_lib_atomic_ref 201806L // also in <atomic>
|
| 28 |
#define __cpp_lib_atomic_shared_ptr 201711L // also in <memory>
|
| 29 |
#define __cpp_lib_atomic_value_initialization 201911L // also in <atomic>, <memory>
|
| 30 |
#define __cpp_lib_atomic_wait 201907L // also in <atomic>
|
| 31 |
-
#define __cpp_lib_barrier
|
|
|
|
| 32 |
#define __cpp_lib_bind_front 201907L // also in <functional>
|
| 33 |
#define __cpp_lib_bit_cast 201806L // also in <bit>
|
| 34 |
#define __cpp_lib_bitops 201907L // also in <bit>
|
| 35 |
#define __cpp_lib_bool_constant 201505L // also in <type_traits>
|
| 36 |
#define __cpp_lib_bounded_array_traits 201902L // also in <type_traits>
|
| 37 |
#define __cpp_lib_boyer_moore_searcher 201603L // also in <functional>
|
| 38 |
#define __cpp_lib_byte 201603L // also in <cstddef>
|
|
|
|
| 39 |
#define __cpp_lib_char8_t 201907L
|
| 40 |
// also in <atomic>, <filesystem>, <istream>, <limits>, <locale>, <ostream>, <string>, <string_view>
|
| 41 |
#define __cpp_lib_chrono 201907L // also in <chrono>
|
| 42 |
#define __cpp_lib_chrono_udls 201304L // also in <chrono>
|
| 43 |
#define __cpp_lib_clamp 201603L // also in <algorithm>
|
|
|
|
|
|
|
| 44 |
#define __cpp_lib_complex_udls 201309L // also in <complex>
|
| 45 |
-
#define __cpp_lib_concepts
|
| 46 |
-
#define __cpp_lib_constexpr_algorithms 201806L // also in <algorithm>
|
|
|
|
|
|
|
|
|
|
| 47 |
#define __cpp_lib_constexpr_complex 201711L // also in <complex>
|
| 48 |
#define __cpp_lib_constexpr_dynamic_alloc 201907L // also in <memory>
|
| 49 |
#define __cpp_lib_constexpr_functional 201907L // also in <functional>
|
| 50 |
#define __cpp_lib_constexpr_iterator 201811L // also in <iterator>
|
| 51 |
-
#define __cpp_lib_constexpr_memory
|
| 52 |
#define __cpp_lib_constexpr_numeric 201911L // also in <numeric>
|
| 53 |
#define __cpp_lib_constexpr_string 201907L // also in <string>
|
| 54 |
#define __cpp_lib_constexpr_string_view 201811L // also in <string_view>
|
| 55 |
#define __cpp_lib_constexpr_tuple 201811L // also in <tuple>
|
|
|
|
| 56 |
#define __cpp_lib_constexpr_utility 201811L // also in <utility>
|
| 57 |
#define __cpp_lib_constexpr_vector 201907L // also in <vector>
|
|
|
|
|
|
|
|
|
|
| 58 |
#define __cpp_lib_coroutine 201902L // also in <coroutine>
|
| 59 |
#define __cpp_lib_destroying_delete 201806L // also in <new>
|
| 60 |
#define __cpp_lib_enable_shared_from_this 201603L // also in <memory>
|
| 61 |
#define __cpp_lib_endian 201907L // also in <bit>
|
| 62 |
#define __cpp_lib_erase_if 202002L
|
| 63 |
// also in <string>, <deque>, <forward_list>, <list>, <vector>, <map>, <set>, <unordered_map>,
|
| 64 |
// <unordered_set>
|
| 65 |
#define __cpp_lib_exchange_function 201304L // also in <utility>
|
| 66 |
#define __cpp_lib_execution 201902L // also in <execution>
|
|
|
|
| 67 |
#define __cpp_lib_filesystem 201703L // also in <filesystem>
|
| 68 |
-
#define
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 69 |
#define __cpp_lib_gcd_lcm 201606L // also in <numeric>
|
|
|
|
| 70 |
#define __cpp_lib_generic_associative_lookup 201304L // also in <map>, <set>
|
| 71 |
#define __cpp_lib_generic_unordered_lookup 201811L
|
| 72 |
// also in <unordered_map>, <unordered_set>
|
| 73 |
#define __cpp_lib_hardware_interference_size 201703L // also in <new>
|
| 74 |
#define __cpp_lib_has_unique_object_representations 201606L // also in <type_traits>
|
|
@@ -79,18 +103,22 @@ the values of these macros with greater values. — *end note*]
|
|
| 79 |
#define __cpp_lib_integer_comparison_functions 202002L // also in <utility>
|
| 80 |
#define __cpp_lib_integer_sequence 201304L // also in <utility>
|
| 81 |
#define __cpp_lib_integral_constant_callable 201304L // also in <type_traits>
|
| 82 |
#define __cpp_lib_interpolate 201902L // also in <cmath>, <numeric>
|
| 83 |
#define __cpp_lib_invoke 201411L // also in <functional>
|
|
|
|
|
|
|
| 84 |
#define __cpp_lib_is_aggregate 201703L // also in <type_traits>
|
| 85 |
#define __cpp_lib_is_constant_evaluated 201811L // also in <type_traits>
|
| 86 |
#define __cpp_lib_is_final 201402L // also in <type_traits>
|
|
|
|
| 87 |
#define __cpp_lib_is_invocable 201703L // also in <type_traits>
|
| 88 |
#define __cpp_lib_is_layout_compatible 201907L // also in <type_traits>
|
| 89 |
#define __cpp_lib_is_nothrow_convertible 201806L // also in <type_traits>
|
| 90 |
#define __cpp_lib_is_null_pointer 201309L // also in <type_traits>
|
| 91 |
#define __cpp_lib_is_pointer_interconvertible 201907L // also in <type_traits>
|
|
|
|
| 92 |
#define __cpp_lib_is_swappable 201603L // also in <type_traits>
|
| 93 |
#define __cpp_lib_jthread 201911L // also in <stop_token>, <thread>
|
| 94 |
#define __cpp_lib_latch 201907L // also in <latch>
|
| 95 |
#define __cpp_lib_launder 201606L // also in <new>
|
| 96 |
#define __cpp_lib_list_remove_return_type 201806L // also in <forward_list>, <list>
|
|
@@ -99,56 +127,90 @@ the values of these macros with greater values. — *end note*]
|
|
| 99 |
#define __cpp_lib_make_reverse_iterator 201402L // also in <iterator>
|
| 100 |
#define __cpp_lib_make_unique 201304L // also in <memory>
|
| 101 |
#define __cpp_lib_map_try_emplace 201411L // also in <map>
|
| 102 |
#define __cpp_lib_math_constants 201907L // also in <numbers>
|
| 103 |
#define __cpp_lib_math_special_functions 201603L // also in <cmath>
|
|
|
|
| 104 |
#define __cpp_lib_memory_resource 201603L // also in <memory_resource>
|
|
|
|
|
|
|
|
|
|
| 105 |
#define __cpp_lib_node_extract 201606L
|
| 106 |
// also in <map>, <set>, <unordered_map>, <unordered_set>
|
| 107 |
#define __cpp_lib_nonmember_container_access 201411L
|
| 108 |
// also in <array>, <deque>, <forward_list>, <iterator>, <list>, <map>, <regex>, <set>, <string>,
|
| 109 |
// <unordered_map>, <unordered_set>, <vector>
|
| 110 |
#define __cpp_lib_not_fn 201603L // also in <functional>
|
| 111 |
#define __cpp_lib_null_iterators 201304L // also in <iterator>
|
| 112 |
-
#define __cpp_lib_optional
|
|
|
|
| 113 |
#define __cpp_lib_parallel_algorithm 201603L // also in <algorithm>, <numeric>
|
| 114 |
-
#define __cpp_lib_polymorphic_allocator 201902L // also in <
|
|
|
|
| 115 |
#define __cpp_lib_quoted_string_io 201304L // also in <iomanip>
|
| 116 |
-
#define __cpp_lib_ranges
|
| 117 |
// also in <algorithm>, <functional>, <iterator>, <memory>, <ranges>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 118 |
#define __cpp_lib_raw_memory_algorithms 201606L // also in <memory>
|
|
|
|
| 119 |
#define __cpp_lib_remove_cvref 201711L // also in <type_traits>
|
| 120 |
#define __cpp_lib_result_of_sfinae 201210L // also in <functional>, <type_traits>
|
| 121 |
#define __cpp_lib_robust_nonmodifying_seq_ops 201304L // also in <algorithm>
|
| 122 |
#define __cpp_lib_sample 201603L // also in <algorithm>
|
| 123 |
#define __cpp_lib_scoped_lock 201703L // also in <mutex>
|
| 124 |
#define __cpp_lib_semaphore 201907L // also in <semaphore>
|
| 125 |
#define __cpp_lib_shared_mutex 201505L // also in <shared_mutex>
|
| 126 |
#define __cpp_lib_shared_ptr_arrays 201707L // also in <memory>
|
| 127 |
#define __cpp_lib_shared_ptr_weak_type 201606L // also in <memory>
|
| 128 |
#define __cpp_lib_shared_timed_mutex 201402L // also in <shared_mutex>
|
| 129 |
-
#define __cpp_lib_shift
|
| 130 |
#define __cpp_lib_smart_ptr_for_overwrite 202002L // also in <memory>
|
| 131 |
#define __cpp_lib_source_location 201907L // also in <source_location>
|
| 132 |
#define __cpp_lib_span 202002L // also in <span>
|
|
|
|
| 133 |
#define __cpp_lib_ssize 201902L // also in <iterator>
|
|
|
|
|
|
|
| 134 |
#define __cpp_lib_starts_ends_with 201711L // also in <string>, <string_view>
|
|
|
|
|
|
|
|
|
|
| 135 |
#define __cpp_lib_string_udls 201304L // also in <string>
|
| 136 |
#define __cpp_lib_string_view 201803L // also in <string>, <string_view>
|
| 137 |
#define __cpp_lib_syncbuf 201803L // also in <syncstream>
|
| 138 |
#define __cpp_lib_three_way_comparison 201907L // also in <compare>
|
| 139 |
#define __cpp_lib_to_address 201711L // also in <memory>
|
| 140 |
#define __cpp_lib_to_array 201907L // also in <array>
|
| 141 |
#define __cpp_lib_to_chars 201611L // also in <charconv>
|
|
|
|
| 142 |
#define __cpp_lib_transformation_trait_aliases 201304L // also in <type_traits>
|
| 143 |
#define __cpp_lib_transparent_operators 201510L // also in <memory>, <functional>
|
|
|
|
|
|
|
| 144 |
#define __cpp_lib_tuple_element_t 201402L // also in <tuple>
|
| 145 |
#define __cpp_lib_tuples_by_type 201304L // also in <utility>, <tuple>
|
| 146 |
#define __cpp_lib_type_identity 201806L // also in <type_traits>
|
| 147 |
#define __cpp_lib_type_trait_variable_templates 201510L // also in <type_traits>
|
| 148 |
#define __cpp_lib_uncaught_exceptions 201411L // also in <exception>
|
| 149 |
#define __cpp_lib_unordered_map_try_emplace 201411L // also in <unordered_map>
|
|
|
|
| 150 |
#define __cpp_lib_unwrap_ref 201811L // also in <type_traits>
|
| 151 |
-
#define __cpp_lib_variant
|
| 152 |
#define __cpp_lib_void_t 201411L // also in <type_traits>
|
| 153 |
```
|
| 154 |
|
|
|
|
| 5 |
|
| 6 |
Each of the macros defined in `<version>` is also defined after
|
| 7 |
inclusion of any member of the set of library headers indicated in the
|
| 8 |
corresponding comment in this synopsis.
|
| 9 |
|
| 10 |
+
[*Note 1*: Future revisions of C++ might replace the values of these
|
| 11 |
+
macros with greater values. — *end note*]
|
| 12 |
|
| 13 |
``` cpp
|
| 14 |
#define __cpp_lib_addressof_constexpr 201603L // also in <memory>
|
| 15 |
+
#define __cpp_lib_algorithm_iterator_requirements 202207L
|
| 16 |
+
// also in <algorithm>, <numeric>, <memory>
|
| 17 |
+
#define __cpp_lib_allocate_at_least 202302L // also in <memory>
|
| 18 |
#define __cpp_lib_allocator_traits_is_always_equal 201411L
|
| 19 |
// also in <memory>, <scoped_allocator>, <string>, <deque>, <forward_list>, <list>, <vector>,
|
| 20 |
// <map>, <set>, <unordered_map>, <unordered_set>
|
| 21 |
+
#define __cpp_lib_adaptor_iterator_pair_constructor 202106L // also in <stack>, <queue>
|
| 22 |
#define __cpp_lib_any 201606L // also in <any>
|
| 23 |
#define __cpp_lib_apply 201603L // also in <tuple>
|
| 24 |
#define __cpp_lib_array_constexpr 201811L // also in <iterator>, <array>
|
| 25 |
#define __cpp_lib_as_const 201510L // also in <utility>
|
| 26 |
+
#define __cpp_lib_associative_heterogeneous_erasure 202110L
|
| 27 |
+
// also in <map>, <set>, <unordered_map>, <unordered_set>
|
| 28 |
#define __cpp_lib_assume_aligned 201811L // also in <memory>
|
| 29 |
#define __cpp_lib_atomic_flag_test 201907L // also in <atomic>
|
| 30 |
#define __cpp_lib_atomic_float 201711L // also in <atomic>
|
| 31 |
#define __cpp_lib_atomic_is_always_lock_free 201603L // also in <atomic>
|
| 32 |
#define __cpp_lib_atomic_lock_free_type_aliases 201907L // also in <atomic>
|
| 33 |
#define __cpp_lib_atomic_ref 201806L // also in <atomic>
|
| 34 |
#define __cpp_lib_atomic_shared_ptr 201711L // also in <memory>
|
| 35 |
#define __cpp_lib_atomic_value_initialization 201911L // also in <atomic>, <memory>
|
| 36 |
#define __cpp_lib_atomic_wait 201907L // also in <atomic>
|
| 37 |
+
#define __cpp_lib_barrier 202302L // also in <barrier>
|
| 38 |
+
#define __cpp_lib_bind_back 202202L // also in <functional>
|
| 39 |
#define __cpp_lib_bind_front 201907L // also in <functional>
|
| 40 |
#define __cpp_lib_bit_cast 201806L // also in <bit>
|
| 41 |
#define __cpp_lib_bitops 201907L // also in <bit>
|
| 42 |
#define __cpp_lib_bool_constant 201505L // also in <type_traits>
|
| 43 |
#define __cpp_lib_bounded_array_traits 201902L // also in <type_traits>
|
| 44 |
#define __cpp_lib_boyer_moore_searcher 201603L // also in <functional>
|
| 45 |
#define __cpp_lib_byte 201603L // also in <cstddef>
|
| 46 |
+
#define __cpp_lib_byteswap 202110L // also in <bit>
|
| 47 |
#define __cpp_lib_char8_t 201907L
|
| 48 |
// also in <atomic>, <filesystem>, <istream>, <limits>, <locale>, <ostream>, <string>, <string_view>
|
| 49 |
#define __cpp_lib_chrono 201907L // also in <chrono>
|
| 50 |
#define __cpp_lib_chrono_udls 201304L // also in <chrono>
|
| 51 |
#define __cpp_lib_clamp 201603L // also in <algorithm>
|
| 52 |
+
#define __cpp_lib_common_reference 202302L // also in <type_traits>
|
| 53 |
+
#define __cpp_lib_common_reference_wrapper 202302L // also in <functional>
|
| 54 |
#define __cpp_lib_complex_udls 201309L // also in <complex>
|
| 55 |
+
#define __cpp_lib_concepts 202207L // also in <concepts>, <compare>
|
| 56 |
+
#define __cpp_lib_constexpr_algorithms 201806L // also in <algorithm>, <utility>
|
| 57 |
+
#define __cpp_lib_constexpr_bitset 202207L // also in <bitset>
|
| 58 |
+
#define __cpp_lib_constexpr_charconv 202207L // also in <charconv>
|
| 59 |
+
#define __cpp_lib_constexpr_cmath 202202L // also in <cmath>, <cstdlib>
|
| 60 |
#define __cpp_lib_constexpr_complex 201711L // also in <complex>
|
| 61 |
#define __cpp_lib_constexpr_dynamic_alloc 201907L // also in <memory>
|
| 62 |
#define __cpp_lib_constexpr_functional 201907L // also in <functional>
|
| 63 |
#define __cpp_lib_constexpr_iterator 201811L // also in <iterator>
|
| 64 |
+
#define __cpp_lib_constexpr_memory 202202L // also in <memory>
|
| 65 |
#define __cpp_lib_constexpr_numeric 201911L // also in <numeric>
|
| 66 |
#define __cpp_lib_constexpr_string 201907L // also in <string>
|
| 67 |
#define __cpp_lib_constexpr_string_view 201811L // also in <string_view>
|
| 68 |
#define __cpp_lib_constexpr_tuple 201811L // also in <tuple>
|
| 69 |
+
#define __cpp_lib_constexpr_typeinfo 202106L // also in <typeinfo>
|
| 70 |
#define __cpp_lib_constexpr_utility 201811L // also in <utility>
|
| 71 |
#define __cpp_lib_constexpr_vector 201907L // also in <vector>
|
| 72 |
+
#define __cpp_lib_containers_ranges 202202L
|
| 73 |
+
// also in <vector>, <list>, <forward_list>, <map>, <set>, <unordered_map>, <unordered_set>,
|
| 74 |
+
// <deque>, <queue>, <stack>, <string>
|
| 75 |
#define __cpp_lib_coroutine 201902L // also in <coroutine>
|
| 76 |
#define __cpp_lib_destroying_delete 201806L // also in <new>
|
| 77 |
#define __cpp_lib_enable_shared_from_this 201603L // also in <memory>
|
| 78 |
#define __cpp_lib_endian 201907L // also in <bit>
|
| 79 |
#define __cpp_lib_erase_if 202002L
|
| 80 |
// also in <string>, <deque>, <forward_list>, <list>, <vector>, <map>, <set>, <unordered_map>,
|
| 81 |
// <unordered_set>
|
| 82 |
#define __cpp_lib_exchange_function 201304L // also in <utility>
|
| 83 |
#define __cpp_lib_execution 201902L // also in <execution>
|
| 84 |
+
#define __cpp_lib_expected 202211L // also in <expected>
|
| 85 |
#define __cpp_lib_filesystem 201703L // also in <filesystem>
|
| 86 |
+
#define __cpp_lib_flat_map 202207L // also in <flat_map>
|
| 87 |
+
#define __cpp_lib_flat_set 202207L // also in <flat_set>
|
| 88 |
+
#define __cpp_lib_format 202207L // also in <format>
|
| 89 |
+
#define __cpp_lib_format_ranges 202207L // also in <format>
|
| 90 |
+
#define __cpp_lib_formatters 202302L // also in <stacktrace>, <thread>
|
| 91 |
+
#define __cpp_lib_forward_like 202207L // also in <utility>
|
| 92 |
#define __cpp_lib_gcd_lcm 201606L // also in <numeric>
|
| 93 |
+
#define __cpp_lib_generator 202207L // also in <generator>
|
| 94 |
#define __cpp_lib_generic_associative_lookup 201304L // also in <map>, <set>
|
| 95 |
#define __cpp_lib_generic_unordered_lookup 201811L
|
| 96 |
// also in <unordered_map>, <unordered_set>
|
| 97 |
#define __cpp_lib_hardware_interference_size 201703L // also in <new>
|
| 98 |
#define __cpp_lib_has_unique_object_representations 201606L // also in <type_traits>
|
|
|
|
| 103 |
#define __cpp_lib_integer_comparison_functions 202002L // also in <utility>
|
| 104 |
#define __cpp_lib_integer_sequence 201304L // also in <utility>
|
| 105 |
#define __cpp_lib_integral_constant_callable 201304L // also in <type_traits>
|
| 106 |
#define __cpp_lib_interpolate 201902L // also in <cmath>, <numeric>
|
| 107 |
#define __cpp_lib_invoke 201411L // also in <functional>
|
| 108 |
+
#define __cpp_lib_invoke_r 202106L // also in <functional>
|
| 109 |
+
#define __cpp_lib_ios_noreplace 202207L // also in <ios>
|
| 110 |
#define __cpp_lib_is_aggregate 201703L // also in <type_traits>
|
| 111 |
#define __cpp_lib_is_constant_evaluated 201811L // also in <type_traits>
|
| 112 |
#define __cpp_lib_is_final 201402L // also in <type_traits>
|
| 113 |
+
#define __cpp_lib_is_implicit_lifetime 202302L // also in <type_traits>
|
| 114 |
#define __cpp_lib_is_invocable 201703L // also in <type_traits>
|
| 115 |
#define __cpp_lib_is_layout_compatible 201907L // also in <type_traits>
|
| 116 |
#define __cpp_lib_is_nothrow_convertible 201806L // also in <type_traits>
|
| 117 |
#define __cpp_lib_is_null_pointer 201309L // also in <type_traits>
|
| 118 |
#define __cpp_lib_is_pointer_interconvertible 201907L // also in <type_traits>
|
| 119 |
+
#define __cpp_lib_is_scoped_enum 202011L // also in <type_traits>
|
| 120 |
#define __cpp_lib_is_swappable 201603L // also in <type_traits>
|
| 121 |
#define __cpp_lib_jthread 201911L // also in <stop_token>, <thread>
|
| 122 |
#define __cpp_lib_latch 201907L // also in <latch>
|
| 123 |
#define __cpp_lib_launder 201606L // also in <new>
|
| 124 |
#define __cpp_lib_list_remove_return_type 201806L // also in <forward_list>, <list>
|
|
|
|
| 127 |
#define __cpp_lib_make_reverse_iterator 201402L // also in <iterator>
|
| 128 |
#define __cpp_lib_make_unique 201304L // also in <memory>
|
| 129 |
#define __cpp_lib_map_try_emplace 201411L // also in <map>
|
| 130 |
#define __cpp_lib_math_constants 201907L // also in <numbers>
|
| 131 |
#define __cpp_lib_math_special_functions 201603L // also in <cmath>
|
| 132 |
+
#define __cpp_lib_mdspan 202207L // also in <mdspan>
|
| 133 |
#define __cpp_lib_memory_resource 201603L // also in <memory_resource>
|
| 134 |
+
#define __cpp_lib_modules 202207L
|
| 135 |
+
#define __cpp_lib_move_iterator_concept 202207L // also in <iterator>
|
| 136 |
+
#define __cpp_lib_move_only_function 202110L // also in <functional>
|
| 137 |
#define __cpp_lib_node_extract 201606L
|
| 138 |
// also in <map>, <set>, <unordered_map>, <unordered_set>
|
| 139 |
#define __cpp_lib_nonmember_container_access 201411L
|
| 140 |
// also in <array>, <deque>, <forward_list>, <iterator>, <list>, <map>, <regex>, <set>, <string>,
|
| 141 |
// <unordered_map>, <unordered_set>, <vector>
|
| 142 |
#define __cpp_lib_not_fn 201603L // also in <functional>
|
| 143 |
#define __cpp_lib_null_iterators 201304L // also in <iterator>
|
| 144 |
+
#define __cpp_lib_optional 202110L // also in <optional>
|
| 145 |
+
#define __cpp_lib_out_ptr 202106L // also in <memory>
|
| 146 |
#define __cpp_lib_parallel_algorithm 201603L // also in <algorithm>, <numeric>
|
| 147 |
+
#define __cpp_lib_polymorphic_allocator 201902L // also in <memory_resource>
|
| 148 |
+
#define __cpp_lib_print 202207L // also in <print>, <ostream>
|
| 149 |
#define __cpp_lib_quoted_string_io 201304L // also in <iomanip>
|
| 150 |
+
#define __cpp_lib_ranges 202302L
|
| 151 |
// also in <algorithm>, <functional>, <iterator>, <memory>, <ranges>
|
| 152 |
+
#define __cpp_lib_ranges_as_const 202207L // also in <ranges>
|
| 153 |
+
#define __cpp_lib_ranges_as_rvalue 202207L // also in <ranges>
|
| 154 |
+
#define __cpp_lib_ranges_cartesian_product 202207L // also in <ranges>
|
| 155 |
+
#define __cpp_lib_ranges_chunk 202202L // also in <ranges>
|
| 156 |
+
#define __cpp_lib_ranges_chunk_by 202202L // also in <ranges>
|
| 157 |
+
#define __cpp_lib_ranges_contains 202207L // also in <algorithm>
|
| 158 |
+
#define __cpp_lib_ranges_enumerate 202302L // also in <ranges>, <version>
|
| 159 |
+
#define __cpp_lib_ranges_find_last 202207L // also in <algorithm>
|
| 160 |
+
#define __cpp_lib_ranges_fold 202207L // also in <algorithm>
|
| 161 |
+
#define __cpp_lib_ranges_iota 202202L // also in <numeric>
|
| 162 |
+
#define __cpp_lib_ranges_join_with 202202L // also in <ranges>
|
| 163 |
+
#define __cpp_lib_ranges_repeat 202207L // also in <ranges>
|
| 164 |
+
#define __cpp_lib_ranges_slide 202202L // also in <ranges>
|
| 165 |
+
#define __cpp_lib_ranges_starts_ends_with 202106L // also in <algorithm>
|
| 166 |
+
#define __cpp_lib_ranges_stride 202207L // also in <ranges>
|
| 167 |
+
#define __cpp_lib_ranges_to_container 202202L // also in <ranges>
|
| 168 |
+
#define __cpp_lib_ranges_zip 202110L // also in <ranges>, <tuple>, <utility>
|
| 169 |
#define __cpp_lib_raw_memory_algorithms 201606L // also in <memory>
|
| 170 |
+
#define __cpp_lib_reference_from_temporary 202202L // also in <type_traits>
|
| 171 |
#define __cpp_lib_remove_cvref 201711L // also in <type_traits>
|
| 172 |
#define __cpp_lib_result_of_sfinae 201210L // also in <functional>, <type_traits>
|
| 173 |
#define __cpp_lib_robust_nonmodifying_seq_ops 201304L // also in <algorithm>
|
| 174 |
#define __cpp_lib_sample 201603L // also in <algorithm>
|
| 175 |
#define __cpp_lib_scoped_lock 201703L // also in <mutex>
|
| 176 |
#define __cpp_lib_semaphore 201907L // also in <semaphore>
|
| 177 |
#define __cpp_lib_shared_mutex 201505L // also in <shared_mutex>
|
| 178 |
#define __cpp_lib_shared_ptr_arrays 201707L // also in <memory>
|
| 179 |
#define __cpp_lib_shared_ptr_weak_type 201606L // also in <memory>
|
| 180 |
#define __cpp_lib_shared_timed_mutex 201402L // also in <shared_mutex>
|
| 181 |
+
#define __cpp_lib_shift 202202L // also in <algorithm>
|
| 182 |
#define __cpp_lib_smart_ptr_for_overwrite 202002L // also in <memory>
|
| 183 |
#define __cpp_lib_source_location 201907L // also in <source_location>
|
| 184 |
#define __cpp_lib_span 202002L // also in <span>
|
| 185 |
+
#define __cpp_lib_spanstream 202106L // also in <spanstream>
|
| 186 |
#define __cpp_lib_ssize 201902L // also in <iterator>
|
| 187 |
+
#define __cpp_lib_stacktrace 202011L // also in <stacktrace>
|
| 188 |
+
#define __cpp_lib_start_lifetime_as 202207L // also in <memory>
|
| 189 |
#define __cpp_lib_starts_ends_with 201711L // also in <string>, <string_view>
|
| 190 |
+
#define __cpp_lib_stdatomic_h 202011L // also in <stdatomic.h>
|
| 191 |
+
#define __cpp_lib_string_contains 202011L // also in <string>, <string_view>
|
| 192 |
+
#define __cpp_lib_string_resize_and_overwrite 202110L // also in <string>
|
| 193 |
#define __cpp_lib_string_udls 201304L // also in <string>
|
| 194 |
#define __cpp_lib_string_view 201803L // also in <string>, <string_view>
|
| 195 |
#define __cpp_lib_syncbuf 201803L // also in <syncstream>
|
| 196 |
#define __cpp_lib_three_way_comparison 201907L // also in <compare>
|
| 197 |
#define __cpp_lib_to_address 201711L // also in <memory>
|
| 198 |
#define __cpp_lib_to_array 201907L // also in <array>
|
| 199 |
#define __cpp_lib_to_chars 201611L // also in <charconv>
|
| 200 |
+
#define __cpp_lib_to_underlying 202102L // also in <utility>
|
| 201 |
#define __cpp_lib_transformation_trait_aliases 201304L // also in <type_traits>
|
| 202 |
#define __cpp_lib_transparent_operators 201510L // also in <memory>, <functional>
|
| 203 |
+
#define __cpp_lib_tuple_like 202207L
|
| 204 |
+
// also in <utility>, <tuple>, <map>, <unordered_map>
|
| 205 |
#define __cpp_lib_tuple_element_t 201402L // also in <tuple>
|
| 206 |
#define __cpp_lib_tuples_by_type 201304L // also in <utility>, <tuple>
|
| 207 |
#define __cpp_lib_type_identity 201806L // also in <type_traits>
|
| 208 |
#define __cpp_lib_type_trait_variable_templates 201510L // also in <type_traits>
|
| 209 |
#define __cpp_lib_uncaught_exceptions 201411L // also in <exception>
|
| 210 |
#define __cpp_lib_unordered_map_try_emplace 201411L // also in <unordered_map>
|
| 211 |
+
#define __cpp_lib_unreachable 202202L // also in <utility>
|
| 212 |
#define __cpp_lib_unwrap_ref 201811L // also in <type_traits>
|
| 213 |
+
#define __cpp_lib_variant 202106L // also in <variant>
|
| 214 |
#define __cpp_lib_void_t 201411L // also in <type_traits>
|
| 215 |
```
|
| 216 |
|