xref: /llvm-project/libcxx/docs/FeatureTestMacroTable.rst (revision def50f701f6a2c1e0550bb341fd8b64bed299e72)
1.. _FeatureTestMacroTable:
2
3==========================
4Feature Test Macro Support
5==========================
6
7.. contents::
8   :local:
9
10Overview
11========
12
13This file documents the feature test macros currently supported by libc++.
14
15.. _feature-status:
16
17Status
18======
19
20.. table:: Current Status
21    :name: feature-status-table
22    :widths: auto
23
24    ========================================================== =================
25    Macro Name                                                 Value
26    ========================================================== =================
27    **C++14**
28    ----------------------------------------------------------------------------
29    ``__cpp_lib_chrono_udls``                                  ``201304L``
30    ---------------------------------------------------------- -----------------
31    ``__cpp_lib_complex_udls``                                 ``201309L``
32    ---------------------------------------------------------- -----------------
33    ``__cpp_lib_exchange_function``                            ``201304L``
34    ---------------------------------------------------------- -----------------
35    ``__cpp_lib_generic_associative_lookup``                   ``201304L``
36    ---------------------------------------------------------- -----------------
37    ``__cpp_lib_integer_sequence``                             ``201304L``
38    ---------------------------------------------------------- -----------------
39    ``__cpp_lib_integral_constant_callable``                   ``201304L``
40    ---------------------------------------------------------- -----------------
41    ``__cpp_lib_is_final``                                     ``201402L``
42    ---------------------------------------------------------- -----------------
43    ``__cpp_lib_is_null_pointer``                              ``201309L``
44    ---------------------------------------------------------- -----------------
45    ``__cpp_lib_make_reverse_iterator``                        ``201402L``
46    ---------------------------------------------------------- -----------------
47    ``__cpp_lib_make_unique``                                  ``201304L``
48    ---------------------------------------------------------- -----------------
49    ``__cpp_lib_null_iterators``                               ``201304L``
50    ---------------------------------------------------------- -----------------
51    ``__cpp_lib_quoted_string_io``                             ``201304L``
52    ---------------------------------------------------------- -----------------
53    ``__cpp_lib_result_of_sfinae``                             ``201210L``
54    ---------------------------------------------------------- -----------------
55    ``__cpp_lib_robust_nonmodifying_seq_ops``                  ``201304L``
56    ---------------------------------------------------------- -----------------
57    ``__cpp_lib_shared_timed_mutex``                           ``201402L``
58    ---------------------------------------------------------- -----------------
59    ``__cpp_lib_string_udls``                                  ``201304L``
60    ---------------------------------------------------------- -----------------
61    ``__cpp_lib_transformation_trait_aliases``                 ``201304L``
62    ---------------------------------------------------------- -----------------
63    ``__cpp_lib_transparent_operators``                        ``201210L``
64    ---------------------------------------------------------- -----------------
65    ``__cpp_lib_tuple_element_t``                              ``201402L``
66    ---------------------------------------------------------- -----------------
67    ``__cpp_lib_tuples_by_type``                               ``201304L``
68    ---------------------------------------------------------- -----------------
69    **C++17**
70    ----------------------------------------------------------------------------
71    ``__cpp_lib_addressof_constexpr``                          ``201603L``
72    ---------------------------------------------------------- -----------------
73    ``__cpp_lib_allocator_traits_is_always_equal``             ``201411L``
74    ---------------------------------------------------------- -----------------
75    ``__cpp_lib_any``                                          ``201606L``
76    ---------------------------------------------------------- -----------------
77    ``__cpp_lib_apply``                                        ``201603L``
78    ---------------------------------------------------------- -----------------
79    ``__cpp_lib_array_constexpr``                              ``201603L``
80    ---------------------------------------------------------- -----------------
81    ``__cpp_lib_as_const``                                     ``201510L``
82    ---------------------------------------------------------- -----------------
83    ``__cpp_lib_atomic_is_always_lock_free``                   ``201603L``
84    ---------------------------------------------------------- -----------------
85    ``__cpp_lib_bool_constant``                                ``201505L``
86    ---------------------------------------------------------- -----------------
87    ``__cpp_lib_boyer_moore_searcher``                         ``201603L``
88    ---------------------------------------------------------- -----------------
89    ``__cpp_lib_byte``                                         ``201603L``
90    ---------------------------------------------------------- -----------------
91    ``__cpp_lib_chrono``                                       ``201611L``
92    ---------------------------------------------------------- -----------------
93    ``__cpp_lib_clamp``                                        ``201603L``
94    ---------------------------------------------------------- -----------------
95    ``__cpp_lib_enable_shared_from_this``                      ``201603L``
96    ---------------------------------------------------------- -----------------
97    ``__cpp_lib_execution``                                    *unimplemented*
98    ---------------------------------------------------------- -----------------
99    ``__cpp_lib_filesystem``                                   ``201703L``
100    ---------------------------------------------------------- -----------------
101    ``__cpp_lib_gcd_lcm``                                      ``201606L``
102    ---------------------------------------------------------- -----------------
103    ``__cpp_lib_hardware_interference_size``                   ``201703L``
104    ---------------------------------------------------------- -----------------
105    ``__cpp_lib_has_unique_object_representations``            ``201606L``
106    ---------------------------------------------------------- -----------------
107    ``__cpp_lib_hypot``                                        ``201603L``
108    ---------------------------------------------------------- -----------------
109    ``__cpp_lib_incomplete_container_elements``                ``201505L``
110    ---------------------------------------------------------- -----------------
111    ``__cpp_lib_invoke``                                       ``201411L``
112    ---------------------------------------------------------- -----------------
113    ``__cpp_lib_is_aggregate``                                 ``201703L``
114    ---------------------------------------------------------- -----------------
115    ``__cpp_lib_is_invocable``                                 ``201703L``
116    ---------------------------------------------------------- -----------------
117    ``__cpp_lib_is_swappable``                                 ``201603L``
118    ---------------------------------------------------------- -----------------
119    ``__cpp_lib_launder``                                      ``201606L``
120    ---------------------------------------------------------- -----------------
121    ``__cpp_lib_logical_traits``                               ``201510L``
122    ---------------------------------------------------------- -----------------
123    ``__cpp_lib_make_from_tuple``                              ``201606L``
124    ---------------------------------------------------------- -----------------
125    ``__cpp_lib_map_try_emplace``                              ``201411L``
126    ---------------------------------------------------------- -----------------
127    ``__cpp_lib_math_special_functions``                       *unimplemented*
128    ---------------------------------------------------------- -----------------
129    ``__cpp_lib_memory_resource``                              ``201603L``
130    ---------------------------------------------------------- -----------------
131    ``__cpp_lib_node_extract``                                 ``201606L``
132    ---------------------------------------------------------- -----------------
133    ``__cpp_lib_nonmember_container_access``                   ``201411L``
134    ---------------------------------------------------------- -----------------
135    ``__cpp_lib_not_fn``                                       ``201603L``
136    ---------------------------------------------------------- -----------------
137    ``__cpp_lib_optional``                                     ``201606L``
138    ---------------------------------------------------------- -----------------
139    ``__cpp_lib_parallel_algorithm``                           *unimplemented*
140    ---------------------------------------------------------- -----------------
141    ``__cpp_lib_raw_memory_algorithms``                        ``201606L``
142    ---------------------------------------------------------- -----------------
143    ``__cpp_lib_sample``                                       ``201603L``
144    ---------------------------------------------------------- -----------------
145    ``__cpp_lib_scoped_lock``                                  ``201703L``
146    ---------------------------------------------------------- -----------------
147    ``__cpp_lib_shared_mutex``                                 ``201505L``
148    ---------------------------------------------------------- -----------------
149    ``__cpp_lib_shared_ptr_arrays``                            ``201611L``
150    ---------------------------------------------------------- -----------------
151    ``__cpp_lib_shared_ptr_weak_type``                         ``201606L``
152    ---------------------------------------------------------- -----------------
153    ``__cpp_lib_string_view``                                  ``201606L``
154    ---------------------------------------------------------- -----------------
155    ``__cpp_lib_to_chars``                                     *unimplemented*
156    ---------------------------------------------------------- -----------------
157    ``__cpp_lib_transparent_operators``                        ``201510L``
158    ---------------------------------------------------------- -----------------
159    ``__cpp_lib_type_trait_variable_templates``                ``201510L``
160    ---------------------------------------------------------- -----------------
161    ``__cpp_lib_uncaught_exceptions``                          ``201411L``
162    ---------------------------------------------------------- -----------------
163    ``__cpp_lib_unordered_map_try_emplace``                    ``201411L``
164    ---------------------------------------------------------- -----------------
165    ``__cpp_lib_variant``                                      ``202102L``
166    ---------------------------------------------------------- -----------------
167    ``__cpp_lib_void_t``                                       ``201411L``
168    ---------------------------------------------------------- -----------------
169    **C++20**
170    ----------------------------------------------------------------------------
171    ``__cpp_lib_array_constexpr``                              ``201811L``
172    ---------------------------------------------------------- -----------------
173    ``__cpp_lib_assume_aligned``                               ``201811L``
174    ---------------------------------------------------------- -----------------
175    ``__cpp_lib_atomic_flag_test``                             ``201907L``
176    ---------------------------------------------------------- -----------------
177    ``__cpp_lib_atomic_float``                                 *unimplemented*
178    ---------------------------------------------------------- -----------------
179    ``__cpp_lib_atomic_lock_free_type_aliases``                ``201907L``
180    ---------------------------------------------------------- -----------------
181    ``__cpp_lib_atomic_ref``                                   ``201806L``
182    ---------------------------------------------------------- -----------------
183    ``__cpp_lib_atomic_shared_ptr``                            *unimplemented*
184    ---------------------------------------------------------- -----------------
185    ``__cpp_lib_atomic_value_initialization``                  ``201911L``
186    ---------------------------------------------------------- -----------------
187    ``__cpp_lib_atomic_wait``                                  ``201907L``
188    ---------------------------------------------------------- -----------------
189    ``__cpp_lib_barrier``                                      ``201907L``
190    ---------------------------------------------------------- -----------------
191    ``__cpp_lib_bind_front``                                   ``201907L``
192    ---------------------------------------------------------- -----------------
193    ``__cpp_lib_bit_cast``                                     ``201806L``
194    ---------------------------------------------------------- -----------------
195    ``__cpp_lib_bitops``                                       ``201907L``
196    ---------------------------------------------------------- -----------------
197    ``__cpp_lib_bounded_array_traits``                         ``201902L``
198    ---------------------------------------------------------- -----------------
199    ``__cpp_lib_char8_t``                                      ``201907L``
200    ---------------------------------------------------------- -----------------
201    ``__cpp_lib_concepts``                                     ``202002L``
202    ---------------------------------------------------------- -----------------
203    ``__cpp_lib_constexpr_algorithms``                         ``201806L``
204    ---------------------------------------------------------- -----------------
205    ``__cpp_lib_constexpr_complex``                            ``201711L``
206    ---------------------------------------------------------- -----------------
207    ``__cpp_lib_constexpr_dynamic_alloc``                      ``201907L``
208    ---------------------------------------------------------- -----------------
209    ``__cpp_lib_constexpr_functional``                         ``201907L``
210    ---------------------------------------------------------- -----------------
211    ``__cpp_lib_constexpr_iterator``                           ``201811L``
212    ---------------------------------------------------------- -----------------
213    ``__cpp_lib_constexpr_memory``                             ``201811L``
214    ---------------------------------------------------------- -----------------
215    ``__cpp_lib_constexpr_numeric``                            ``201911L``
216    ---------------------------------------------------------- -----------------
217    ``__cpp_lib_constexpr_string``                             ``201907L``
218    ---------------------------------------------------------- -----------------
219    ``__cpp_lib_constexpr_string_view``                        ``201811L``
220    ---------------------------------------------------------- -----------------
221    ``__cpp_lib_constexpr_tuple``                              ``201811L``
222    ---------------------------------------------------------- -----------------
223    ``__cpp_lib_constexpr_utility``                            ``201811L``
224    ---------------------------------------------------------- -----------------
225    ``__cpp_lib_constexpr_vector``                             ``201907L``
226    ---------------------------------------------------------- -----------------
227    ``__cpp_lib_coroutine``                                    ``201902L``
228    ---------------------------------------------------------- -----------------
229    ``__cpp_lib_destroying_delete``                            ``201806L``
230    ---------------------------------------------------------- -----------------
231    ``__cpp_lib_endian``                                       ``201907L``
232    ---------------------------------------------------------- -----------------
233    ``__cpp_lib_erase_if``                                     ``202002L``
234    ---------------------------------------------------------- -----------------
235    ``__cpp_lib_execution``                                    *unimplemented*
236    ---------------------------------------------------------- -----------------
237    ``__cpp_lib_format``                                       ``202110L``
238    ---------------------------------------------------------- -----------------
239    ``__cpp_lib_format_uchar``                                 ``202311L``
240    ---------------------------------------------------------- -----------------
241    ``__cpp_lib_generic_unordered_lookup``                     ``201811L``
242    ---------------------------------------------------------- -----------------
243    ``__cpp_lib_int_pow2``                                     ``202002L``
244    ---------------------------------------------------------- -----------------
245    ``__cpp_lib_integer_comparison_functions``                 ``202002L``
246    ---------------------------------------------------------- -----------------
247    ``__cpp_lib_interpolate``                                  ``201902L``
248    ---------------------------------------------------------- -----------------
249    ``__cpp_lib_is_constant_evaluated``                        ``201811L``
250    ---------------------------------------------------------- -----------------
251    ``__cpp_lib_is_layout_compatible``                         *unimplemented*
252    ---------------------------------------------------------- -----------------
253    ``__cpp_lib_is_nothrow_convertible``                       ``201806L``
254    ---------------------------------------------------------- -----------------
255    ``__cpp_lib_is_pointer_interconvertible``                  *unimplemented*
256    ---------------------------------------------------------- -----------------
257    ``__cpp_lib_jthread``                                      ``201911L``
258    ---------------------------------------------------------- -----------------
259    ``__cpp_lib_latch``                                        ``201907L``
260    ---------------------------------------------------------- -----------------
261    ``__cpp_lib_list_remove_return_type``                      ``201806L``
262    ---------------------------------------------------------- -----------------
263    ``__cpp_lib_math_constants``                               ``201907L``
264    ---------------------------------------------------------- -----------------
265    ``__cpp_lib_move_iterator_concept``                        ``202207L``
266    ---------------------------------------------------------- -----------------
267    ``__cpp_lib_optional``                                     ``202106L``
268    ---------------------------------------------------------- -----------------
269    ``__cpp_lib_polymorphic_allocator``                        ``201902L``
270    ---------------------------------------------------------- -----------------
271    ``__cpp_lib_ranges``                                       ``202110L``
272    ---------------------------------------------------------- -----------------
273    ``__cpp_lib_remove_cvref``                                 ``201711L``
274    ---------------------------------------------------------- -----------------
275    ``__cpp_lib_semaphore``                                    ``201907L``
276    ---------------------------------------------------------- -----------------
277    ``__cpp_lib_shared_ptr_arrays``                            ``201707L``
278    ---------------------------------------------------------- -----------------
279    ``__cpp_lib_shift``                                        ``201806L``
280    ---------------------------------------------------------- -----------------
281    ``__cpp_lib_smart_ptr_for_overwrite``                      ``202002L``
282    ---------------------------------------------------------- -----------------
283    ``__cpp_lib_source_location``                              ``201907L``
284    ---------------------------------------------------------- -----------------
285    ``__cpp_lib_span``                                         ``202002L``
286    ---------------------------------------------------------- -----------------
287    ``__cpp_lib_ssize``                                        ``201902L``
288    ---------------------------------------------------------- -----------------
289    ``__cpp_lib_starts_ends_with``                             ``201711L``
290    ---------------------------------------------------------- -----------------
291    ``__cpp_lib_string_view``                                  ``201803L``
292    ---------------------------------------------------------- -----------------
293    ``__cpp_lib_syncbuf``                                      ``201803L``
294    ---------------------------------------------------------- -----------------
295    ``__cpp_lib_three_way_comparison``                         ``201907L``
296    ---------------------------------------------------------- -----------------
297    ``__cpp_lib_to_address``                                   ``201711L``
298    ---------------------------------------------------------- -----------------
299    ``__cpp_lib_to_array``                                     ``201907L``
300    ---------------------------------------------------------- -----------------
301    ``__cpp_lib_type_identity``                                ``201806L``
302    ---------------------------------------------------------- -----------------
303    ``__cpp_lib_unwrap_ref``                                   ``201811L``
304    ---------------------------------------------------------- -----------------
305    ``__cpp_lib_variant``                                      ``202106L``
306    ---------------------------------------------------------- -----------------
307    **C++23**
308    ----------------------------------------------------------------------------
309    ``__cpp_lib_adaptor_iterator_pair_constructor``            ``202106L``
310    ---------------------------------------------------------- -----------------
311    ``__cpp_lib_allocate_at_least``                            ``202302L``
312    ---------------------------------------------------------- -----------------
313    ``__cpp_lib_associative_heterogeneous_erasure``            *unimplemented*
314    ---------------------------------------------------------- -----------------
315    ``__cpp_lib_bind_back``                                    ``202202L``
316    ---------------------------------------------------------- -----------------
317    ``__cpp_lib_byteswap``                                     ``202110L``
318    ---------------------------------------------------------- -----------------
319    ``__cpp_lib_constexpr_bitset``                             ``202207L``
320    ---------------------------------------------------------- -----------------
321    ``__cpp_lib_constexpr_charconv``                           ``202207L``
322    ---------------------------------------------------------- -----------------
323    ``__cpp_lib_constexpr_cmath``                              *unimplemented*
324    ---------------------------------------------------------- -----------------
325    ``__cpp_lib_constexpr_memory``                             ``202202L``
326    ---------------------------------------------------------- -----------------
327    ``__cpp_lib_constexpr_typeinfo``                           ``202106L``
328    ---------------------------------------------------------- -----------------
329    ``__cpp_lib_containers_ranges``                            ``202202L``
330    ---------------------------------------------------------- -----------------
331    ``__cpp_lib_expected``                                     ``202211L``
332    ---------------------------------------------------------- -----------------
333    ``__cpp_lib_flat_map``                                     ``202207L``
334    ---------------------------------------------------------- -----------------
335    ``__cpp_lib_flat_set``                                     *unimplemented*
336    ---------------------------------------------------------- -----------------
337    ``__cpp_lib_format_ranges``                                ``202207L``
338    ---------------------------------------------------------- -----------------
339    ``__cpp_lib_formatters``                                   *unimplemented*
340    ---------------------------------------------------------- -----------------
341    ``__cpp_lib_forward_like``                                 ``202207L``
342    ---------------------------------------------------------- -----------------
343    ``__cpp_lib_invoke_r``                                     ``202106L``
344    ---------------------------------------------------------- -----------------
345    ``__cpp_lib_ios_noreplace``                                ``202207L``
346    ---------------------------------------------------------- -----------------
347    ``__cpp_lib_is_implicit_lifetime``                         ``202302L``
348    ---------------------------------------------------------- -----------------
349    ``__cpp_lib_is_scoped_enum``                               ``202011L``
350    ---------------------------------------------------------- -----------------
351    ``__cpp_lib_mdspan``                                       ``202207L``
352    ---------------------------------------------------------- -----------------
353    ``__cpp_lib_modules``                                      ``202207L``
354    ---------------------------------------------------------- -----------------
355    ``__cpp_lib_move_only_function``                           *unimplemented*
356    ---------------------------------------------------------- -----------------
357    ``__cpp_lib_optional``                                     ``202110L``
358    ---------------------------------------------------------- -----------------
359    ``__cpp_lib_out_ptr``                                      ``202106L``
360    ---------------------------------------------------------- -----------------
361    ``__cpp_lib_print``                                        ``202207L``
362    ---------------------------------------------------------- -----------------
363    ``__cpp_lib_ranges``                                       ``202406L``
364    ---------------------------------------------------------- -----------------
365    ``__cpp_lib_ranges_as_const``                              *unimplemented*
366    ---------------------------------------------------------- -----------------
367    ``__cpp_lib_ranges_as_rvalue``                             ``202207L``
368    ---------------------------------------------------------- -----------------
369    ``__cpp_lib_ranges_chunk``                                 *unimplemented*
370    ---------------------------------------------------------- -----------------
371    ``__cpp_lib_ranges_chunk_by``                              ``202202L``
372    ---------------------------------------------------------- -----------------
373    ``__cpp_lib_ranges_contains``                              ``202207L``
374    ---------------------------------------------------------- -----------------
375    ``__cpp_lib_ranges_find_last``                             ``202207L``
376    ---------------------------------------------------------- -----------------
377    ``__cpp_lib_ranges_iota``                                  *unimplemented*
378    ---------------------------------------------------------- -----------------
379    ``__cpp_lib_ranges_join_with``                             *unimplemented*
380    ---------------------------------------------------------- -----------------
381    ``__cpp_lib_ranges_repeat``                                ``202207L``
382    ---------------------------------------------------------- -----------------
383    ``__cpp_lib_ranges_slide``                                 *unimplemented*
384    ---------------------------------------------------------- -----------------
385    ``__cpp_lib_ranges_starts_ends_with``                      ``202106L``
386    ---------------------------------------------------------- -----------------
387    ``__cpp_lib_ranges_to_container``                          ``202202L``
388    ---------------------------------------------------------- -----------------
389    ``__cpp_lib_ranges_zip``                                   *unimplemented*
390    ---------------------------------------------------------- -----------------
391    ``__cpp_lib_reference_from_temporary``                     *unimplemented*
392    ---------------------------------------------------------- -----------------
393    ``__cpp_lib_spanstream``                                   *unimplemented*
394    ---------------------------------------------------------- -----------------
395    ``__cpp_lib_stacktrace``                                   *unimplemented*
396    ---------------------------------------------------------- -----------------
397    ``__cpp_lib_stdatomic_h``                                  ``202011L``
398    ---------------------------------------------------------- -----------------
399    ``__cpp_lib_string_contains``                              ``202011L``
400    ---------------------------------------------------------- -----------------
401    ``__cpp_lib_string_resize_and_overwrite``                  ``202110L``
402    ---------------------------------------------------------- -----------------
403    ``__cpp_lib_to_underlying``                                ``202102L``
404    ---------------------------------------------------------- -----------------
405    ``__cpp_lib_tuple_like``                                   *unimplemented*
406    ---------------------------------------------------------- -----------------
407    ``__cpp_lib_unreachable``                                  ``202202L``
408    ---------------------------------------------------------- -----------------
409    **C++26**
410    ----------------------------------------------------------------------------
411    ``__cpp_lib_associative_heterogeneous_insertion``          *unimplemented*
412    ---------------------------------------------------------- -----------------
413    ``__cpp_lib_atomic_min_max``                               *unimplemented*
414    ---------------------------------------------------------- -----------------
415    ``__cpp_lib_bind_front``                                   ``202306L``
416    ---------------------------------------------------------- -----------------
417    ``__cpp_lib_bitset``                                       ``202306L``
418    ---------------------------------------------------------- -----------------
419    ``__cpp_lib_constexpr_new``                                ``202406L``
420    ---------------------------------------------------------- -----------------
421    ``__cpp_lib_constrained_equality``                         *unimplemented*
422    ---------------------------------------------------------- -----------------
423    ``__cpp_lib_copyable_function``                            *unimplemented*
424    ---------------------------------------------------------- -----------------
425    ``__cpp_lib_debugging``                                    *unimplemented*
426    ---------------------------------------------------------- -----------------
427    ``__cpp_lib_default_template_type_for_algorithm_values``   *unimplemented*
428    ---------------------------------------------------------- -----------------
429    ``__cpp_lib_format_path``                                  *unimplemented*
430    ---------------------------------------------------------- -----------------
431    ``__cpp_lib_freestanding_algorithm``                       *unimplemented*
432    ---------------------------------------------------------- -----------------
433    ``__cpp_lib_freestanding_array``                           *unimplemented*
434    ---------------------------------------------------------- -----------------
435    ``__cpp_lib_freestanding_cstring``                         *unimplemented*
436    ---------------------------------------------------------- -----------------
437    ``__cpp_lib_freestanding_expected``                        *unimplemented*
438    ---------------------------------------------------------- -----------------
439    ``__cpp_lib_freestanding_mdspan``                          *unimplemented*
440    ---------------------------------------------------------- -----------------
441    ``__cpp_lib_freestanding_optional``                        *unimplemented*
442    ---------------------------------------------------------- -----------------
443    ``__cpp_lib_freestanding_string_view``                     *unimplemented*
444    ---------------------------------------------------------- -----------------
445    ``__cpp_lib_freestanding_variant``                         *unimplemented*
446    ---------------------------------------------------------- -----------------
447    ``__cpp_lib_fstream_native_handle``                        ``202306L``
448    ---------------------------------------------------------- -----------------
449    ``__cpp_lib_function_ref``                                 *unimplemented*
450    ---------------------------------------------------------- -----------------
451    ``__cpp_lib_generate_random``                              *unimplemented*
452    ---------------------------------------------------------- -----------------
453    ``__cpp_lib_hazard_pointer``                               *unimplemented*
454    ---------------------------------------------------------- -----------------
455    ``__cpp_lib_inplace_vector``                               *unimplemented*
456    ---------------------------------------------------------- -----------------
457    ``__cpp_lib_is_virtual_base_of``                           ``202406L``
458    ---------------------------------------------------------- -----------------
459    ``__cpp_lib_is_within_lifetime``                           *unimplemented*
460    ---------------------------------------------------------- -----------------
461    ``__cpp_lib_linalg``                                       *unimplemented*
462    ---------------------------------------------------------- -----------------
463    ``__cpp_lib_mdspan``                                       ``202406L``
464    ---------------------------------------------------------- -----------------
465    ``__cpp_lib_not_fn``                                       ``202306L``
466    ---------------------------------------------------------- -----------------
467    ``__cpp_lib_optional_range_support``                       *unimplemented*
468    ---------------------------------------------------------- -----------------
469    ``__cpp_lib_out_ptr``                                      ``202311L``
470    ---------------------------------------------------------- -----------------
471    ``__cpp_lib_philox_engine``                                *unimplemented*
472    ---------------------------------------------------------- -----------------
473    ``__cpp_lib_ranges_concat``                                *unimplemented*
474    ---------------------------------------------------------- -----------------
475    ``__cpp_lib_ratio``                                        ``202306L``
476    ---------------------------------------------------------- -----------------
477    ``__cpp_lib_rcu``                                          *unimplemented*
478    ---------------------------------------------------------- -----------------
479    ``__cpp_lib_reference_wrapper``                            ``202403L``
480    ---------------------------------------------------------- -----------------
481    ``__cpp_lib_saturation_arithmetic``                        ``202311L``
482    ---------------------------------------------------------- -----------------
483    ``__cpp_lib_senders``                                      *unimplemented*
484    ---------------------------------------------------------- -----------------
485    ``__cpp_lib_smart_ptr_owner_equality``                     *unimplemented*
486    ---------------------------------------------------------- -----------------
487    ``__cpp_lib_span_at``                                      ``202311L``
488    ---------------------------------------------------------- -----------------
489    ``__cpp_lib_span_initializer_list``                        ``202311L``
490    ---------------------------------------------------------- -----------------
491    ``__cpp_lib_sstream_from_string_view``                     ``202306L``
492    ---------------------------------------------------------- -----------------
493    ``__cpp_lib_string_view``                                  ``202403L``
494    ---------------------------------------------------------- -----------------
495    ``__cpp_lib_submdspan``                                    *unimplemented*
496    ---------------------------------------------------------- -----------------
497    ``__cpp_lib_text_encoding``                                *unimplemented*
498    ---------------------------------------------------------- -----------------
499    ``__cpp_lib_to_chars``                                     *unimplemented*
500    ---------------------------------------------------------- -----------------
501    ``__cpp_lib_to_string``                                    *unimplemented*
502    ---------------------------------------------------------- -----------------
503    ``__cpp_lib_tuple_like``                                   *unimplemented*
504    ---------------------------------------------------------- -----------------
505    ``__cpp_lib_variant``                                      ``202306L``
506    ========================================================== =================
507
508