146035553Spatrick.. _FeatureTestMacroTable: 246035553Spatrick 346035553Spatrick========================== 446035553SpatrickFeature Test Macro Support 546035553Spatrick========================== 646035553Spatrick 746035553Spatrick.. contents:: 846035553Spatrick :local: 946035553Spatrick 1046035553SpatrickOverview 1146035553Spatrick======== 1246035553Spatrick 1346035553SpatrickThis file documents the feature test macros currently supported by libc++. 1446035553Spatrick 1546035553Spatrick.. _feature-status: 1646035553Spatrick 1746035553SpatrickStatus 1846035553Spatrick====== 1946035553Spatrick 2046035553Spatrick.. table:: Current Status 2146035553Spatrick :name: feature-status-table 2246035553Spatrick :widths: auto 2346035553Spatrick 2446035553Spatrick ================================================= ================= 2546035553Spatrick Macro Name Value 2646035553Spatrick ================================================= ================= 2746035553Spatrick **C++ 14** 2846035553Spatrick ------------------------------------------------------------------- 2946035553Spatrick ``__cpp_lib_chrono_udls`` ``201304L`` 3046035553Spatrick ------------------------------------------------- ----------------- 3146035553Spatrick ``__cpp_lib_complex_udls`` ``201309L`` 3246035553Spatrick ------------------------------------------------- ----------------- 3346035553Spatrick ``__cpp_lib_exchange_function`` ``201304L`` 3446035553Spatrick ------------------------------------------------- ----------------- 3546035553Spatrick ``__cpp_lib_generic_associative_lookup`` ``201304L`` 3646035553Spatrick ------------------------------------------------- ----------------- 3746035553Spatrick ``__cpp_lib_integer_sequence`` ``201304L`` 3846035553Spatrick ------------------------------------------------- ----------------- 3946035553Spatrick ``__cpp_lib_integral_constant_callable`` ``201304L`` 4046035553Spatrick ------------------------------------------------- ----------------- 4146035553Spatrick ``__cpp_lib_is_final`` ``201402L`` 4246035553Spatrick ------------------------------------------------- ----------------- 4346035553Spatrick ``__cpp_lib_is_null_pointer`` ``201309L`` 4446035553Spatrick ------------------------------------------------- ----------------- 4546035553Spatrick ``__cpp_lib_make_reverse_iterator`` ``201402L`` 4646035553Spatrick ------------------------------------------------- ----------------- 4746035553Spatrick ``__cpp_lib_make_unique`` ``201304L`` 4846035553Spatrick ------------------------------------------------- ----------------- 4946035553Spatrick ``__cpp_lib_null_iterators`` ``201304L`` 5046035553Spatrick ------------------------------------------------- ----------------- 5146035553Spatrick ``__cpp_lib_quoted_string_io`` ``201304L`` 5246035553Spatrick ------------------------------------------------- ----------------- 5346035553Spatrick ``__cpp_lib_result_of_sfinae`` ``201210L`` 5446035553Spatrick ------------------------------------------------- ----------------- 5546035553Spatrick ``__cpp_lib_robust_nonmodifying_seq_ops`` ``201304L`` 5646035553Spatrick ------------------------------------------------- ----------------- 5746035553Spatrick ``__cpp_lib_shared_timed_mutex`` ``201402L`` 5846035553Spatrick ------------------------------------------------- ----------------- 5946035553Spatrick ``__cpp_lib_string_udls`` ``201304L`` 6046035553Spatrick ------------------------------------------------- ----------------- 6146035553Spatrick ``__cpp_lib_transformation_trait_aliases`` ``201304L`` 6246035553Spatrick ------------------------------------------------- ----------------- 6346035553Spatrick ``__cpp_lib_transparent_operators`` ``201210L`` 6446035553Spatrick ------------------------------------------------- ----------------- 6546035553Spatrick ``__cpp_lib_tuple_element_t`` ``201402L`` 6646035553Spatrick ------------------------------------------------- ----------------- 6746035553Spatrick ``__cpp_lib_tuples_by_type`` ``201304L`` 6846035553Spatrick ------------------------------------------------- ----------------- 6946035553Spatrick **C++ 17** 7046035553Spatrick ------------------------------------------------------------------- 7146035553Spatrick ``__cpp_lib_addressof_constexpr`` ``201603L`` 7246035553Spatrick ------------------------------------------------- ----------------- 7346035553Spatrick ``__cpp_lib_allocator_traits_is_always_equal`` ``201411L`` 7446035553Spatrick ------------------------------------------------- ----------------- 7546035553Spatrick ``__cpp_lib_any`` ``201606L`` 7646035553Spatrick ------------------------------------------------- ----------------- 7746035553Spatrick ``__cpp_lib_apply`` ``201603L`` 7846035553Spatrick ------------------------------------------------- ----------------- 7946035553Spatrick ``__cpp_lib_array_constexpr`` ``201603L`` 8046035553Spatrick ------------------------------------------------- ----------------- 8146035553Spatrick ``__cpp_lib_as_const`` ``201510L`` 8246035553Spatrick ------------------------------------------------- ----------------- 8346035553Spatrick ``__cpp_lib_atomic_is_always_lock_free`` ``201603L`` 8446035553Spatrick ------------------------------------------------- ----------------- 8546035553Spatrick ``__cpp_lib_bool_constant`` ``201505L`` 8646035553Spatrick ------------------------------------------------- ----------------- 87*4bdff4beSrobert ``__cpp_lib_boyer_moore_searcher`` ``201603L`` 8846035553Spatrick ------------------------------------------------- ----------------- 8946035553Spatrick ``__cpp_lib_byte`` ``201603L`` 9046035553Spatrick ------------------------------------------------- ----------------- 9146035553Spatrick ``__cpp_lib_chrono`` ``201611L`` 9246035553Spatrick ------------------------------------------------- ----------------- 9346035553Spatrick ``__cpp_lib_clamp`` ``201603L`` 9446035553Spatrick ------------------------------------------------- ----------------- 9546035553Spatrick ``__cpp_lib_enable_shared_from_this`` ``201603L`` 9646035553Spatrick ------------------------------------------------- ----------------- 9746035553Spatrick ``__cpp_lib_execution`` *unimplemented* 9846035553Spatrick ------------------------------------------------- ----------------- 9946035553Spatrick ``__cpp_lib_filesystem`` ``201703L`` 10046035553Spatrick ------------------------------------------------- ----------------- 10146035553Spatrick ``__cpp_lib_gcd_lcm`` ``201606L`` 10246035553Spatrick ------------------------------------------------- ----------------- 103*4bdff4beSrobert ``__cpp_lib_hardware_interference_size`` ``201703L`` 10446035553Spatrick ------------------------------------------------- ----------------- 10546035553Spatrick ``__cpp_lib_has_unique_object_representations`` ``201606L`` 10646035553Spatrick ------------------------------------------------- ----------------- 10746035553Spatrick ``__cpp_lib_hypot`` ``201603L`` 10846035553Spatrick ------------------------------------------------- ----------------- 10946035553Spatrick ``__cpp_lib_incomplete_container_elements`` ``201505L`` 11046035553Spatrick ------------------------------------------------- ----------------- 11146035553Spatrick ``__cpp_lib_invoke`` ``201411L`` 11246035553Spatrick ------------------------------------------------- ----------------- 11346035553Spatrick ``__cpp_lib_is_aggregate`` ``201703L`` 11446035553Spatrick ------------------------------------------------- ----------------- 11546035553Spatrick ``__cpp_lib_is_invocable`` ``201703L`` 11646035553Spatrick ------------------------------------------------- ----------------- 11746035553Spatrick ``__cpp_lib_is_swappable`` ``201603L`` 11846035553Spatrick ------------------------------------------------- ----------------- 11946035553Spatrick ``__cpp_lib_launder`` ``201606L`` 12046035553Spatrick ------------------------------------------------- ----------------- 12146035553Spatrick ``__cpp_lib_logical_traits`` ``201510L`` 12246035553Spatrick ------------------------------------------------- ----------------- 12346035553Spatrick ``__cpp_lib_make_from_tuple`` ``201606L`` 12446035553Spatrick ------------------------------------------------- ----------------- 12546035553Spatrick ``__cpp_lib_map_try_emplace`` ``201411L`` 12646035553Spatrick ------------------------------------------------- ----------------- 12746035553Spatrick ``__cpp_lib_math_special_functions`` *unimplemented* 12846035553Spatrick ------------------------------------------------- ----------------- 129*4bdff4beSrobert ``__cpp_lib_memory_resource`` ``201603L`` 13046035553Spatrick ------------------------------------------------- ----------------- 13146035553Spatrick ``__cpp_lib_node_extract`` ``201606L`` 13246035553Spatrick ------------------------------------------------- ----------------- 13346035553Spatrick ``__cpp_lib_nonmember_container_access`` ``201411L`` 13446035553Spatrick ------------------------------------------------- ----------------- 13546035553Spatrick ``__cpp_lib_not_fn`` ``201603L`` 13646035553Spatrick ------------------------------------------------- ----------------- 13746035553Spatrick ``__cpp_lib_optional`` ``201606L`` 13846035553Spatrick ------------------------------------------------- ----------------- 13946035553Spatrick ``__cpp_lib_parallel_algorithm`` *unimplemented* 14046035553Spatrick ------------------------------------------------- ----------------- 14146035553Spatrick ``__cpp_lib_raw_memory_algorithms`` ``201606L`` 14246035553Spatrick ------------------------------------------------- ----------------- 14346035553Spatrick ``__cpp_lib_sample`` ``201603L`` 14446035553Spatrick ------------------------------------------------- ----------------- 14546035553Spatrick ``__cpp_lib_scoped_lock`` ``201703L`` 14646035553Spatrick ------------------------------------------------- ----------------- 14746035553Spatrick ``__cpp_lib_shared_mutex`` ``201505L`` 14846035553Spatrick ------------------------------------------------- ----------------- 14976d0caaeSpatrick ``__cpp_lib_shared_ptr_arrays`` ``201611L`` 15046035553Spatrick ------------------------------------------------- ----------------- 15146035553Spatrick ``__cpp_lib_shared_ptr_weak_type`` ``201606L`` 15246035553Spatrick ------------------------------------------------- ----------------- 15346035553Spatrick ``__cpp_lib_string_view`` ``201606L`` 15446035553Spatrick ------------------------------------------------- ----------------- 15546035553Spatrick ``__cpp_lib_to_chars`` *unimplemented* 15646035553Spatrick ------------------------------------------------- ----------------- 15746035553Spatrick ``__cpp_lib_transparent_operators`` ``201510L`` 15846035553Spatrick ------------------------------------------------- ----------------- 15946035553Spatrick ``__cpp_lib_type_trait_variable_templates`` ``201510L`` 16046035553Spatrick ------------------------------------------------- ----------------- 16146035553Spatrick ``__cpp_lib_uncaught_exceptions`` ``201411L`` 16246035553Spatrick ------------------------------------------------- ----------------- 16346035553Spatrick ``__cpp_lib_unordered_map_try_emplace`` ``201411L`` 16446035553Spatrick ------------------------------------------------- ----------------- 16576d0caaeSpatrick ``__cpp_lib_variant`` ``202102L`` 16646035553Spatrick ------------------------------------------------- ----------------- 16746035553Spatrick ``__cpp_lib_void_t`` ``201411L`` 16846035553Spatrick ------------------------------------------------- ----------------- 16976d0caaeSpatrick **C++ 20** 17046035553Spatrick ------------------------------------------------------------------- 171037e7968Spatrick ``__cpp_lib_array_constexpr`` ``201811L`` 172037e7968Spatrick ------------------------------------------------- ----------------- 173*4bdff4beSrobert ``__cpp_lib_assume_aligned`` ``201811L`` 17476d0caaeSpatrick ------------------------------------------------- ----------------- 17576d0caaeSpatrick ``__cpp_lib_atomic_flag_test`` ``201907L`` 17676d0caaeSpatrick ------------------------------------------------- ----------------- 17776d0caaeSpatrick ``__cpp_lib_atomic_float`` *unimplemented* 17876d0caaeSpatrick ------------------------------------------------- ----------------- 17976d0caaeSpatrick ``__cpp_lib_atomic_lock_free_type_aliases`` ``201907L`` 18076d0caaeSpatrick ------------------------------------------------- ----------------- 18146035553Spatrick ``__cpp_lib_atomic_ref`` *unimplemented* 18246035553Spatrick ------------------------------------------------- ----------------- 18376d0caaeSpatrick ``__cpp_lib_atomic_shared_ptr`` *unimplemented* 18476d0caaeSpatrick ------------------------------------------------- ----------------- 18576d0caaeSpatrick ``__cpp_lib_atomic_value_initialization`` ``201911L`` 18676d0caaeSpatrick ------------------------------------------------- ----------------- 18776d0caaeSpatrick ``__cpp_lib_atomic_wait`` ``201907L`` 18876d0caaeSpatrick ------------------------------------------------- ----------------- 18976d0caaeSpatrick ``__cpp_lib_barrier`` ``201907L`` 19076d0caaeSpatrick ------------------------------------------------- ----------------- 19176d0caaeSpatrick ``__cpp_lib_bind_front`` ``201907L`` 19246035553Spatrick ------------------------------------------------- ----------------- 193*4bdff4beSrobert ``__cpp_lib_bit_cast`` ``201806L`` 19446035553Spatrick ------------------------------------------------- ----------------- 19576d0caaeSpatrick ``__cpp_lib_bitops`` *unimplemented* 19676d0caaeSpatrick ------------------------------------------------- ----------------- 19776d0caaeSpatrick ``__cpp_lib_bounded_array_traits`` ``201902L`` 19876d0caaeSpatrick ------------------------------------------------- ----------------- 199*4bdff4beSrobert ``__cpp_lib_char8_t`` ``201907L`` 20046035553Spatrick ------------------------------------------------- ----------------- 20176d0caaeSpatrick ``__cpp_lib_concepts`` ``202002L`` 20246035553Spatrick ------------------------------------------------- ----------------- 20376d0caaeSpatrick ``__cpp_lib_constexpr_algorithms`` ``201806L`` 20446035553Spatrick ------------------------------------------------- ----------------- 205*4bdff4beSrobert ``__cpp_lib_constexpr_complex`` ``201711L`` 20676d0caaeSpatrick ------------------------------------------------- ----------------- 20776d0caaeSpatrick ``__cpp_lib_constexpr_dynamic_alloc`` ``201907L`` 20876d0caaeSpatrick ------------------------------------------------- ----------------- 20976d0caaeSpatrick ``__cpp_lib_constexpr_functional`` ``201907L`` 21076d0caaeSpatrick ------------------------------------------------- ----------------- 21176d0caaeSpatrick ``__cpp_lib_constexpr_iterator`` ``201811L`` 21276d0caaeSpatrick ------------------------------------------------- ----------------- 21376d0caaeSpatrick ``__cpp_lib_constexpr_memory`` ``201811L`` 21476d0caaeSpatrick ------------------------------------------------- ----------------- 21576d0caaeSpatrick ``__cpp_lib_constexpr_numeric`` ``201911L`` 21676d0caaeSpatrick ------------------------------------------------- ----------------- 217*4bdff4beSrobert ``__cpp_lib_constexpr_string`` ``201907L`` 21876d0caaeSpatrick ------------------------------------------------- ----------------- 21976d0caaeSpatrick ``__cpp_lib_constexpr_string_view`` ``201811L`` 22076d0caaeSpatrick ------------------------------------------------- ----------------- 22176d0caaeSpatrick ``__cpp_lib_constexpr_tuple`` ``201811L`` 22276d0caaeSpatrick ------------------------------------------------- ----------------- 22376d0caaeSpatrick ``__cpp_lib_constexpr_utility`` ``201811L`` 22476d0caaeSpatrick ------------------------------------------------- ----------------- 225*4bdff4beSrobert ``__cpp_lib_constexpr_vector`` ``201907L`` 22676d0caaeSpatrick ------------------------------------------------- ----------------- 227*4bdff4beSrobert ``__cpp_lib_coroutine`` ``201902L`` 22846035553Spatrick ------------------------------------------------- ----------------- 22946035553Spatrick ``__cpp_lib_destroying_delete`` ``201806L`` 23046035553Spatrick ------------------------------------------------- ----------------- 23146035553Spatrick ``__cpp_lib_endian`` ``201907L`` 23246035553Spatrick ------------------------------------------------- ----------------- 233037e7968Spatrick ``__cpp_lib_erase_if`` ``202002L`` 23446035553Spatrick ------------------------------------------------- ----------------- 23576d0caaeSpatrick ``__cpp_lib_execution`` *unimplemented* 23676d0caaeSpatrick ------------------------------------------------- ----------------- 23776d0caaeSpatrick ``__cpp_lib_format`` *unimplemented* 23876d0caaeSpatrick ------------------------------------------------- ----------------- 23976d0caaeSpatrick ``__cpp_lib_generic_unordered_lookup`` ``201811L`` 24076d0caaeSpatrick ------------------------------------------------- ----------------- 24176d0caaeSpatrick ``__cpp_lib_int_pow2`` ``202002L`` 24276d0caaeSpatrick ------------------------------------------------- ----------------- 24376d0caaeSpatrick ``__cpp_lib_integer_comparison_functions`` ``202002L`` 24446035553Spatrick ------------------------------------------------- ----------------- 24546035553Spatrick ``__cpp_lib_interpolate`` ``201902L`` 24646035553Spatrick ------------------------------------------------- ----------------- 24746035553Spatrick ``__cpp_lib_is_constant_evaluated`` ``201811L`` 24846035553Spatrick ------------------------------------------------- ----------------- 24976d0caaeSpatrick ``__cpp_lib_is_layout_compatible`` *unimplemented* 25076d0caaeSpatrick ------------------------------------------------- ----------------- 25176d0caaeSpatrick ``__cpp_lib_is_nothrow_convertible`` ``201806L`` 25276d0caaeSpatrick ------------------------------------------------- ----------------- 25376d0caaeSpatrick ``__cpp_lib_is_pointer_interconvertible`` *unimplemented* 25476d0caaeSpatrick ------------------------------------------------- ----------------- 25576d0caaeSpatrick ``__cpp_lib_jthread`` *unimplemented* 25676d0caaeSpatrick ------------------------------------------------- ----------------- 25776d0caaeSpatrick ``__cpp_lib_latch`` ``201907L`` 25876d0caaeSpatrick ------------------------------------------------- ----------------- 259037e7968Spatrick ``__cpp_lib_list_remove_return_type`` ``201806L`` 260037e7968Spatrick ------------------------------------------------- ----------------- 261037e7968Spatrick ``__cpp_lib_math_constants`` ``201907L`` 26246035553Spatrick ------------------------------------------------- ----------------- 263*4bdff4beSrobert ``__cpp_lib_polymorphic_allocator`` ``201902L`` 26476d0caaeSpatrick ------------------------------------------------- ----------------- 265*4bdff4beSrobert ``__cpp_lib_ranges`` ``202106L`` 26646035553Spatrick ------------------------------------------------- ----------------- 26776d0caaeSpatrick ``__cpp_lib_remove_cvref`` ``201711L`` 26876d0caaeSpatrick ------------------------------------------------- ----------------- 26976d0caaeSpatrick ``__cpp_lib_semaphore`` ``201907L`` 27076d0caaeSpatrick ------------------------------------------------- ----------------- 271*4bdff4beSrobert ``__cpp_lib_shared_ptr_arrays`` ``201707L`` 272*4bdff4beSrobert ------------------------------------------------- ----------------- 27376d0caaeSpatrick ``__cpp_lib_shift`` ``201806L`` 27476d0caaeSpatrick ------------------------------------------------- ----------------- 27576d0caaeSpatrick ``__cpp_lib_smart_ptr_for_overwrite`` *unimplemented* 27676d0caaeSpatrick ------------------------------------------------- ----------------- 277*4bdff4beSrobert ``__cpp_lib_source_location`` ``201907L`` 27876d0caaeSpatrick ------------------------------------------------- ----------------- 279037e7968Spatrick ``__cpp_lib_span`` ``202002L`` 280037e7968Spatrick ------------------------------------------------- ----------------- 28176d0caaeSpatrick ``__cpp_lib_ssize`` ``201902L`` 28276d0caaeSpatrick ------------------------------------------------- ----------------- 28376d0caaeSpatrick ``__cpp_lib_starts_ends_with`` ``201711L`` 28476d0caaeSpatrick ------------------------------------------------- ----------------- 28576d0caaeSpatrick ``__cpp_lib_string_view`` ``201803L`` 28676d0caaeSpatrick ------------------------------------------------- ----------------- 28776d0caaeSpatrick ``__cpp_lib_syncbuf`` *unimplemented* 28876d0caaeSpatrick ------------------------------------------------- ----------------- 28946035553Spatrick ``__cpp_lib_three_way_comparison`` *unimplemented* 290037e7968Spatrick ------------------------------------------------- ----------------- 29176d0caaeSpatrick ``__cpp_lib_to_address`` ``201711L`` 29276d0caaeSpatrick ------------------------------------------------- ----------------- 293037e7968Spatrick ``__cpp_lib_to_array`` ``201907L`` 29476d0caaeSpatrick ------------------------------------------------- ----------------- 295*4bdff4beSrobert ``__cpp_lib_type_identity`` ``201806L`` 296*4bdff4beSrobert ------------------------------------------------- ----------------- 29776d0caaeSpatrick ``__cpp_lib_unwrap_ref`` ``201811L`` 29876d0caaeSpatrick ------------------------------------------------- ----------------- 29976d0caaeSpatrick **C++ 2b** 30076d0caaeSpatrick ------------------------------------------------------------------- 301*4bdff4beSrobert ``__cpp_lib_adaptor_iterator_pair_constructor`` ``202106L`` 302*4bdff4beSrobert ------------------------------------------------- ----------------- 303*4bdff4beSrobert ``__cpp_lib_allocate_at_least`` ``202106L`` 304*4bdff4beSrobert ------------------------------------------------- ----------------- 305*4bdff4beSrobert ``__cpp_lib_associative_heterogeneous_erasure`` *unimplemented* 306*4bdff4beSrobert ------------------------------------------------- ----------------- 307*4bdff4beSrobert ``__cpp_lib_bind_back`` *unimplemented* 308*4bdff4beSrobert ------------------------------------------------- ----------------- 309*4bdff4beSrobert ``__cpp_lib_byteswap`` ``202110L`` 310*4bdff4beSrobert ------------------------------------------------- ----------------- 311*4bdff4beSrobert ``__cpp_lib_constexpr_bitset`` ``202207L`` 312*4bdff4beSrobert ------------------------------------------------- ----------------- 313*4bdff4beSrobert ``__cpp_lib_constexpr_charconv`` ``202207L`` 314*4bdff4beSrobert ------------------------------------------------- ----------------- 315*4bdff4beSrobert ``__cpp_lib_constexpr_cmath`` *unimplemented* 316*4bdff4beSrobert ------------------------------------------------- ----------------- 317*4bdff4beSrobert ``__cpp_lib_constexpr_memory`` ``202202L`` 318*4bdff4beSrobert ------------------------------------------------- ----------------- 319*4bdff4beSrobert ``__cpp_lib_constexpr_typeinfo`` *unimplemented* 320*4bdff4beSrobert ------------------------------------------------- ----------------- 321*4bdff4beSrobert ``__cpp_lib_expected`` ``202202L`` 322*4bdff4beSrobert ------------------------------------------------- ----------------- 323*4bdff4beSrobert ``__cpp_lib_forward_like`` ``202207L`` 324*4bdff4beSrobert ------------------------------------------------- ----------------- 325*4bdff4beSrobert ``__cpp_lib_invoke_r`` *unimplemented* 326*4bdff4beSrobert ------------------------------------------------- ----------------- 32776d0caaeSpatrick ``__cpp_lib_is_scoped_enum`` ``202011L`` 32876d0caaeSpatrick ------------------------------------------------- ----------------- 329*4bdff4beSrobert ``__cpp_lib_move_only_function`` *unimplemented* 330*4bdff4beSrobert ------------------------------------------------- ----------------- 331*4bdff4beSrobert ``__cpp_lib_optional`` ``202110L`` 332*4bdff4beSrobert ------------------------------------------------- ----------------- 333*4bdff4beSrobert ``__cpp_lib_out_ptr`` *unimplemented* 334*4bdff4beSrobert ------------------------------------------------- ----------------- 335*4bdff4beSrobert ``__cpp_lib_ranges_as_rvalue`` ``202207L`` 336*4bdff4beSrobert ------------------------------------------------- ----------------- 337*4bdff4beSrobert ``__cpp_lib_ranges_chunk`` *unimplemented* 338*4bdff4beSrobert ------------------------------------------------- ----------------- 339*4bdff4beSrobert ``__cpp_lib_ranges_chunk_by`` *unimplemented* 340*4bdff4beSrobert ------------------------------------------------- ----------------- 341*4bdff4beSrobert ``__cpp_lib_ranges_iota`` *unimplemented* 342*4bdff4beSrobert ------------------------------------------------- ----------------- 343*4bdff4beSrobert ``__cpp_lib_ranges_join_with`` *unimplemented* 344*4bdff4beSrobert ------------------------------------------------- ----------------- 345*4bdff4beSrobert ``__cpp_lib_ranges_slide`` *unimplemented* 346*4bdff4beSrobert ------------------------------------------------- ----------------- 347*4bdff4beSrobert ``__cpp_lib_ranges_starts_ends_with`` *unimplemented* 348*4bdff4beSrobert ------------------------------------------------- ----------------- 349*4bdff4beSrobert ``__cpp_lib_ranges_to_container`` *unimplemented* 350*4bdff4beSrobert ------------------------------------------------- ----------------- 351*4bdff4beSrobert ``__cpp_lib_ranges_zip`` *unimplemented* 352*4bdff4beSrobert ------------------------------------------------- ----------------- 353*4bdff4beSrobert ``__cpp_lib_reference_from_temporary`` *unimplemented* 354*4bdff4beSrobert ------------------------------------------------- ----------------- 355*4bdff4beSrobert ``__cpp_lib_spanstream`` *unimplemented* 356*4bdff4beSrobert ------------------------------------------------- ----------------- 35776d0caaeSpatrick ``__cpp_lib_stacktrace`` *unimplemented* 35876d0caaeSpatrick ------------------------------------------------- ----------------- 359*4bdff4beSrobert ``__cpp_lib_stdatomic_h`` ``202011L`` 36076d0caaeSpatrick ------------------------------------------------- ----------------- 36176d0caaeSpatrick ``__cpp_lib_string_contains`` ``202011L`` 36276d0caaeSpatrick ------------------------------------------------- ----------------- 363*4bdff4beSrobert ``__cpp_lib_string_resize_and_overwrite`` ``202110L`` 364*4bdff4beSrobert ------------------------------------------------- ----------------- 36576d0caaeSpatrick ``__cpp_lib_to_underlying`` ``202102L`` 366*4bdff4beSrobert ------------------------------------------------- ----------------- 367*4bdff4beSrobert ``__cpp_lib_unreachable`` ``202202L`` 36846035553Spatrick ================================================= ================= 36946035553Spatrick 370