1 //===----------------------------------------------------------------------===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 //
9 // WARNING: This test was generated by generate_feature_test_macro_components.py
10 // and should not be edited manually.
11 //
12 // clang-format off
13 
14 // <version>
15 
16 // Test the feature test macros defined by <version>
17 
18 /*  Constant                                                Value
19     __cpp_lib_adaptor_iterator_pair_constructor             202106L [C++23]
20     __cpp_lib_addressof_constexpr                           201603L [C++17]
21     __cpp_lib_allocate_at_least                             202302L [C++23]
22     __cpp_lib_allocator_traits_is_always_equal              201411L [C++17]
23     __cpp_lib_any                                           201606L [C++17]
24     __cpp_lib_apply                                         201603L [C++17]
25     __cpp_lib_array_constexpr                               201603L [C++17]
26                                                             201811L [C++20]
27     __cpp_lib_as_const                                      201510L [C++17]
28     __cpp_lib_associative_heterogeneous_erasure             202110L [C++23]
29     __cpp_lib_associative_heterogeneous_insertion           202306L [C++26]
30     __cpp_lib_assume_aligned                                201811L [C++20]
31     __cpp_lib_atomic_flag_test                              201907L [C++20]
32     __cpp_lib_atomic_float                                  201711L [C++20]
33     __cpp_lib_atomic_is_always_lock_free                    201603L [C++17]
34     __cpp_lib_atomic_lock_free_type_aliases                 201907L [C++20]
35     __cpp_lib_atomic_min_max                                202403L [C++26]
36     __cpp_lib_atomic_ref                                    201806L [C++20]
37     __cpp_lib_atomic_shared_ptr                             201711L [C++20]
38     __cpp_lib_atomic_value_initialization                   201911L [C++20]
39     __cpp_lib_atomic_wait                                   201907L [C++20]
40     __cpp_lib_barrier                                       201907L [C++20]
41     __cpp_lib_bind_back                                     202202L [C++23]
42     __cpp_lib_bind_front                                    201907L [C++20]
43                                                             202306L [C++26]
44     __cpp_lib_bit_cast                                      201806L [C++20]
45     __cpp_lib_bitops                                        201907L [C++20]
46     __cpp_lib_bitset                                        202306L [C++26]
47     __cpp_lib_bool_constant                                 201505L [C++17]
48     __cpp_lib_bounded_array_traits                          201902L [C++20]
49     __cpp_lib_boyer_moore_searcher                          201603L [C++17]
50     __cpp_lib_byte                                          201603L [C++17]
51     __cpp_lib_byteswap                                      202110L [C++23]
52     __cpp_lib_char8_t                                       201907L [C++20]
53     __cpp_lib_chrono                                        201611L [C++17]
54     __cpp_lib_chrono_udls                                   201304L [C++14]
55     __cpp_lib_clamp                                         201603L [C++17]
56     __cpp_lib_complex_udls                                  201309L [C++14]
57     __cpp_lib_concepts                                      202002L [C++20]
58     __cpp_lib_constexpr_algorithms                          201806L [C++20]
59     __cpp_lib_constexpr_bitset                              202207L [C++23]
60     __cpp_lib_constexpr_charconv                            202207L [C++23]
61     __cpp_lib_constexpr_cmath                               202202L [C++23]
62     __cpp_lib_constexpr_complex                             201711L [C++20]
63     __cpp_lib_constexpr_dynamic_alloc                       201907L [C++20]
64     __cpp_lib_constexpr_functional                          201907L [C++20]
65     __cpp_lib_constexpr_iterator                            201811L [C++20]
66     __cpp_lib_constexpr_memory                              201811L [C++20]
67                                                             202202L [C++23]
68     __cpp_lib_constexpr_new                                 202406L [C++26]
69     __cpp_lib_constexpr_numeric                             201911L [C++20]
70     __cpp_lib_constexpr_string                              201907L [C++20]
71     __cpp_lib_constexpr_string_view                         201811L [C++20]
72     __cpp_lib_constexpr_tuple                               201811L [C++20]
73     __cpp_lib_constexpr_typeinfo                            202106L [C++23]
74     __cpp_lib_constexpr_utility                             201811L [C++20]
75     __cpp_lib_constexpr_vector                              201907L [C++20]
76     __cpp_lib_constrained_equality                          202403L [C++26]
77     __cpp_lib_containers_ranges                             202202L [C++23]
78     __cpp_lib_copyable_function                             202306L [C++26]
79     __cpp_lib_coroutine                                     201902L [C++20]
80     __cpp_lib_debugging                                     202311L [C++26]
81     __cpp_lib_default_template_type_for_algorithm_values    202403L [C++26]
82     __cpp_lib_destroying_delete                             201806L [C++20]
83     __cpp_lib_enable_shared_from_this                       201603L [C++17]
84     __cpp_lib_endian                                        201907L [C++20]
85     __cpp_lib_erase_if                                      202002L [C++20]
86     __cpp_lib_exchange_function                             201304L [C++14]
87     __cpp_lib_execution                                     201603L [C++17]
88                                                             201902L [C++20]
89     __cpp_lib_expected                                      202211L [C++23]
90     __cpp_lib_filesystem                                    201703L [C++17]
91     __cpp_lib_format                                        202110L [C++20]
92     __cpp_lib_format_path                                   202403L [C++26]
93     __cpp_lib_format_ranges                                 202207L [C++23]
94     __cpp_lib_format_uchar                                  202311L [C++20]
95     __cpp_lib_formatters                                    202302L [C++23]
96     __cpp_lib_forward_like                                  202207L [C++23]
97     __cpp_lib_freestanding_algorithm                        202311L [C++26]
98     __cpp_lib_freestanding_array                            202311L [C++26]
99     __cpp_lib_freestanding_cstring                          202306L [C++26]
100     __cpp_lib_freestanding_expected                         202311L [C++26]
101     __cpp_lib_freestanding_mdspan                           202311L [C++26]
102     __cpp_lib_freestanding_optional                         202311L [C++26]
103     __cpp_lib_freestanding_string_view                      202311L [C++26]
104     __cpp_lib_freestanding_variant                          202311L [C++26]
105     __cpp_lib_fstream_native_handle                         202306L [C++26]
106     __cpp_lib_function_ref                                  202306L [C++26]
107     __cpp_lib_gcd_lcm                                       201606L [C++17]
108     __cpp_lib_generate_random                               202403L [C++26]
109     __cpp_lib_generic_associative_lookup                    201304L [C++14]
110     __cpp_lib_generic_unordered_lookup                      201811L [C++20]
111     __cpp_lib_hardware_interference_size                    201703L [C++17]
112     __cpp_lib_has_unique_object_representations             201606L [C++17]
113     __cpp_lib_hazard_pointer                                202306L [C++26]
114     __cpp_lib_hypot                                         201603L [C++17]
115     __cpp_lib_incomplete_container_elements                 201505L [C++17]
116     __cpp_lib_inplace_vector                                202406L [C++26]
117     __cpp_lib_int_pow2                                      202002L [C++20]
118     __cpp_lib_integer_comparison_functions                  202002L [C++20]
119     __cpp_lib_integer_sequence                              201304L [C++14]
120     __cpp_lib_integral_constant_callable                    201304L [C++14]
121     __cpp_lib_interpolate                                   201902L [C++20]
122     __cpp_lib_invoke                                        201411L [C++17]
123     __cpp_lib_invoke_r                                      202106L [C++23]
124     __cpp_lib_ios_noreplace                                 202207L [C++23]
125     __cpp_lib_is_aggregate                                  201703L [C++17]
126     __cpp_lib_is_constant_evaluated                         201811L [C++20]
127     __cpp_lib_is_final                                      201402L [C++14]
128     __cpp_lib_is_invocable                                  201703L [C++17]
129     __cpp_lib_is_layout_compatible                          201907L [C++20]
130     __cpp_lib_is_nothrow_convertible                        201806L [C++20]
131     __cpp_lib_is_null_pointer                               201309L [C++14]
132     __cpp_lib_is_pointer_interconvertible                   201907L [C++20]
133     __cpp_lib_is_scoped_enum                                202011L [C++23]
134     __cpp_lib_is_swappable                                  201603L [C++17]
135     __cpp_lib_is_virtual_base_of                            202406L [C++26]
136     __cpp_lib_is_within_lifetime                            202306L [C++26]
137     __cpp_lib_jthread                                       201911L [C++20]
138     __cpp_lib_latch                                         201907L [C++20]
139     __cpp_lib_launder                                       201606L [C++17]
140     __cpp_lib_linalg                                        202311L [C++26]
141     __cpp_lib_list_remove_return_type                       201806L [C++20]
142     __cpp_lib_logical_traits                                201510L [C++17]
143     __cpp_lib_make_from_tuple                               201606L [C++17]
144     __cpp_lib_make_reverse_iterator                         201402L [C++14]
145     __cpp_lib_make_unique                                   201304L [C++14]
146     __cpp_lib_map_try_emplace                               201411L [C++17]
147     __cpp_lib_math_constants                                201907L [C++20]
148     __cpp_lib_math_special_functions                        201603L [C++17]
149     __cpp_lib_mdspan                                        202207L [C++23]
150                                                             202406L [C++26]
151     __cpp_lib_memory_resource                               201603L [C++17]
152     __cpp_lib_modules                                       202207L [C++23]
153     __cpp_lib_move_iterator_concept                         202207L [C++20]
154     __cpp_lib_move_only_function                            202110L [C++23]
155     __cpp_lib_node_extract                                  201606L [C++17]
156     __cpp_lib_nonmember_container_access                    201411L [C++17]
157     __cpp_lib_not_fn                                        201603L [C++17]
158     __cpp_lib_null_iterators                                201304L [C++14]
159     __cpp_lib_optional                                      201606L [C++17]
160                                                             202110L [C++23]
161     __cpp_lib_optional_range_support                        202406L [C++26]
162     __cpp_lib_out_ptr                                       202106L [C++23]
163                                                             202311L [C++26]
164     __cpp_lib_parallel_algorithm                            201603L [C++17]
165     __cpp_lib_philox_engine                                 202406L [C++26]
166     __cpp_lib_polymorphic_allocator                         201902L [C++20]
167     __cpp_lib_print                                         202207L [C++23]
168     __cpp_lib_quoted_string_io                              201304L [C++14]
169     __cpp_lib_ranges                                        202110L [C++20]
170                                                             202406L [C++23]
171     __cpp_lib_ranges_as_const                               202207L [C++23]
172     __cpp_lib_ranges_as_rvalue                              202207L [C++23]
173     __cpp_lib_ranges_chunk                                  202202L [C++23]
174     __cpp_lib_ranges_chunk_by                               202202L [C++23]
175     __cpp_lib_ranges_concat                                 202403L [C++26]
176     __cpp_lib_ranges_contains                               202207L [C++23]
177     __cpp_lib_ranges_find_last                              202207L [C++23]
178     __cpp_lib_ranges_iota                                   202202L [C++23]
179     __cpp_lib_ranges_join_with                              202202L [C++23]
180     __cpp_lib_ranges_repeat                                 202207L [C++23]
181     __cpp_lib_ranges_slide                                  202202L [C++23]
182     __cpp_lib_ranges_starts_ends_with                       202106L [C++23]
183     __cpp_lib_ranges_to_container                           202202L [C++23]
184     __cpp_lib_ranges_zip                                    202110L [C++23]
185     __cpp_lib_ratio                                         202306L [C++26]
186     __cpp_lib_raw_memory_algorithms                         201606L [C++17]
187     __cpp_lib_rcu                                           202306L [C++26]
188     __cpp_lib_reference_from_temporary                      202202L [C++23]
189     __cpp_lib_reference_wrapper                             202403L [C++26]
190     __cpp_lib_remove_cvref                                  201711L [C++20]
191     __cpp_lib_result_of_sfinae                              201210L [C++14]
192     __cpp_lib_robust_nonmodifying_seq_ops                   201304L [C++14]
193     __cpp_lib_sample                                        201603L [C++17]
194     __cpp_lib_saturation_arithmetic                         202311L [C++26]
195     __cpp_lib_scoped_lock                                   201703L [C++17]
196     __cpp_lib_semaphore                                     201907L [C++20]
197     __cpp_lib_senders                                       202406L [C++26]
198     __cpp_lib_shared_mutex                                  201505L [C++17]
199     __cpp_lib_shared_ptr_arrays                             201611L [C++17]
200                                                             201707L [C++20]
201     __cpp_lib_shared_ptr_weak_type                          201606L [C++17]
202     __cpp_lib_shared_timed_mutex                            201402L [C++14]
203     __cpp_lib_shift                                         201806L [C++20]
204     __cpp_lib_smart_ptr_for_overwrite                       202002L [C++20]
205     __cpp_lib_smart_ptr_owner_equality                      202306L [C++26]
206     __cpp_lib_source_location                               201907L [C++20]
207     __cpp_lib_span                                          202002L [C++20]
208     __cpp_lib_span_at                                       202311L [C++26]
209     __cpp_lib_span_initializer_list                         202311L [C++26]
210     __cpp_lib_spanstream                                    202106L [C++23]
211     __cpp_lib_ssize                                         201902L [C++20]
212     __cpp_lib_sstream_from_string_view                      202306L [C++26]
213     __cpp_lib_stacktrace                                    202011L [C++23]
214     __cpp_lib_starts_ends_with                              201711L [C++20]
215     __cpp_lib_stdatomic_h                                   202011L [C++23]
216     __cpp_lib_string_contains                               202011L [C++23]
217     __cpp_lib_string_resize_and_overwrite                   202110L [C++23]
218     __cpp_lib_string_udls                                   201304L [C++14]
219     __cpp_lib_string_view                                   201606L [C++17]
220                                                             201803L [C++20]
221                                                             202403L [C++26]
222     __cpp_lib_submdspan                                     202306L [C++26]
223     __cpp_lib_syncbuf                                       201803L [C++20]
224     __cpp_lib_text_encoding                                 202306L [C++26]
225     __cpp_lib_three_way_comparison                          201907L [C++20]
226     __cpp_lib_to_address                                    201711L [C++20]
227     __cpp_lib_to_array                                      201907L [C++20]
228     __cpp_lib_to_chars                                      201611L [C++17]
229                                                             202306L [C++26]
230     __cpp_lib_to_string                                     202306L [C++26]
231     __cpp_lib_to_underlying                                 202102L [C++23]
232     __cpp_lib_transformation_trait_aliases                  201304L [C++14]
233     __cpp_lib_transparent_operators                         201210L [C++14]
234                                                             201510L [C++17]
235     __cpp_lib_tuple_element_t                               201402L [C++14]
236     __cpp_lib_tuple_like                                    202207L [C++23]
237                                                             202311L [C++26]
238     __cpp_lib_tuples_by_type                                201304L [C++14]
239     __cpp_lib_type_identity                                 201806L [C++20]
240     __cpp_lib_type_trait_variable_templates                 201510L [C++17]
241     __cpp_lib_uncaught_exceptions                           201411L [C++17]
242     __cpp_lib_unordered_map_try_emplace                     201411L [C++17]
243     __cpp_lib_unreachable                                   202202L [C++23]
244     __cpp_lib_unwrap_ref                                    201811L [C++20]
245     __cpp_lib_variant                                       202102L [C++17]
246     __cpp_lib_void_t                                        201411L [C++17]
247 */
248 
249 #include <version>
250 #include "test_macros.h"
251 
252 #if TEST_STD_VER < 14
253 
254 # ifdef __cpp_lib_adaptor_iterator_pair_constructor
255 #   error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++23"
256 # endif
257 
258 # ifdef __cpp_lib_addressof_constexpr
259 #   error "__cpp_lib_addressof_constexpr should not be defined before c++17"
260 # endif
261 
262 # ifdef __cpp_lib_allocate_at_least
263 #   error "__cpp_lib_allocate_at_least should not be defined before c++23"
264 # endif
265 
266 # ifdef __cpp_lib_allocator_traits_is_always_equal
267 #   error "__cpp_lib_allocator_traits_is_always_equal should not be defined before c++17"
268 # endif
269 
270 # ifdef __cpp_lib_any
271 #   error "__cpp_lib_any should not be defined before c++17"
272 # endif
273 
274 # ifdef __cpp_lib_apply
275 #   error "__cpp_lib_apply should not be defined before c++17"
276 # endif
277 
278 # ifdef __cpp_lib_array_constexpr
279 #   error "__cpp_lib_array_constexpr should not be defined before c++17"
280 # endif
281 
282 # ifdef __cpp_lib_as_const
283 #   error "__cpp_lib_as_const should not be defined before c++17"
284 # endif
285 
286 # ifdef __cpp_lib_associative_heterogeneous_erasure
287 #   error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
288 # endif
289 
290 # ifdef __cpp_lib_associative_heterogeneous_insertion
291 #   error "__cpp_lib_associative_heterogeneous_insertion should not be defined before c++26"
292 # endif
293 
294 # ifdef __cpp_lib_assume_aligned
295 #   error "__cpp_lib_assume_aligned should not be defined before c++20"
296 # endif
297 
298 # ifdef __cpp_lib_atomic_flag_test
299 #   error "__cpp_lib_atomic_flag_test should not be defined before c++20"
300 # endif
301 
302 # ifdef __cpp_lib_atomic_float
303 #   error "__cpp_lib_atomic_float should not be defined before c++20"
304 # endif
305 
306 # ifdef __cpp_lib_atomic_is_always_lock_free
307 #   error "__cpp_lib_atomic_is_always_lock_free should not be defined before c++17"
308 # endif
309 
310 # ifdef __cpp_lib_atomic_lock_free_type_aliases
311 #   error "__cpp_lib_atomic_lock_free_type_aliases should not be defined before c++20"
312 # endif
313 
314 # ifdef __cpp_lib_atomic_min_max
315 #   error "__cpp_lib_atomic_min_max should not be defined before c++26"
316 # endif
317 
318 # ifdef __cpp_lib_atomic_ref
319 #   error "__cpp_lib_atomic_ref should not be defined before c++20"
320 # endif
321 
322 # ifdef __cpp_lib_atomic_shared_ptr
323 #   error "__cpp_lib_atomic_shared_ptr should not be defined before c++20"
324 # endif
325 
326 # ifdef __cpp_lib_atomic_value_initialization
327 #   error "__cpp_lib_atomic_value_initialization should not be defined before c++20"
328 # endif
329 
330 # ifdef __cpp_lib_atomic_wait
331 #   error "__cpp_lib_atomic_wait should not be defined before c++20"
332 # endif
333 
334 # ifdef __cpp_lib_barrier
335 #   error "__cpp_lib_barrier should not be defined before c++20"
336 # endif
337 
338 # ifdef __cpp_lib_bind_back
339 #   error "__cpp_lib_bind_back should not be defined before c++23"
340 # endif
341 
342 # ifdef __cpp_lib_bind_front
343 #   error "__cpp_lib_bind_front should not be defined before c++20"
344 # endif
345 
346 # ifdef __cpp_lib_bit_cast
347 #   error "__cpp_lib_bit_cast should not be defined before c++20"
348 # endif
349 
350 # ifdef __cpp_lib_bitops
351 #   error "__cpp_lib_bitops should not be defined before c++20"
352 # endif
353 
354 # ifdef __cpp_lib_bitset
355 #   error "__cpp_lib_bitset should not be defined before c++26"
356 # endif
357 
358 # ifdef __cpp_lib_bool_constant
359 #   error "__cpp_lib_bool_constant should not be defined before c++17"
360 # endif
361 
362 # ifdef __cpp_lib_bounded_array_traits
363 #   error "__cpp_lib_bounded_array_traits should not be defined before c++20"
364 # endif
365 
366 # ifdef __cpp_lib_boyer_moore_searcher
367 #   error "__cpp_lib_boyer_moore_searcher should not be defined before c++17"
368 # endif
369 
370 # ifdef __cpp_lib_byte
371 #   error "__cpp_lib_byte should not be defined before c++17"
372 # endif
373 
374 # ifdef __cpp_lib_byteswap
375 #   error "__cpp_lib_byteswap should not be defined before c++23"
376 # endif
377 
378 # ifdef __cpp_lib_char8_t
379 #   error "__cpp_lib_char8_t should not be defined before c++20"
380 # endif
381 
382 # ifdef __cpp_lib_chrono
383 #   error "__cpp_lib_chrono should not be defined before c++17"
384 # endif
385 
386 # ifdef __cpp_lib_chrono_udls
387 #   error "__cpp_lib_chrono_udls should not be defined before c++14"
388 # endif
389 
390 # ifdef __cpp_lib_clamp
391 #   error "__cpp_lib_clamp should not be defined before c++17"
392 # endif
393 
394 # ifdef __cpp_lib_complex_udls
395 #   error "__cpp_lib_complex_udls should not be defined before c++14"
396 # endif
397 
398 # ifdef __cpp_lib_concepts
399 #   error "__cpp_lib_concepts should not be defined before c++20"
400 # endif
401 
402 # ifdef __cpp_lib_constexpr_algorithms
403 #   error "__cpp_lib_constexpr_algorithms should not be defined before c++20"
404 # endif
405 
406 # ifdef __cpp_lib_constexpr_bitset
407 #   error "__cpp_lib_constexpr_bitset should not be defined before c++23"
408 # endif
409 
410 # ifdef __cpp_lib_constexpr_charconv
411 #   error "__cpp_lib_constexpr_charconv should not be defined before c++23"
412 # endif
413 
414 # ifdef __cpp_lib_constexpr_cmath
415 #   error "__cpp_lib_constexpr_cmath should not be defined before c++23"
416 # endif
417 
418 # ifdef __cpp_lib_constexpr_complex
419 #   error "__cpp_lib_constexpr_complex should not be defined before c++20"
420 # endif
421 
422 # ifdef __cpp_lib_constexpr_dynamic_alloc
423 #   error "__cpp_lib_constexpr_dynamic_alloc should not be defined before c++20"
424 # endif
425 
426 # ifdef __cpp_lib_constexpr_functional
427 #   error "__cpp_lib_constexpr_functional should not be defined before c++20"
428 # endif
429 
430 # ifdef __cpp_lib_constexpr_iterator
431 #   error "__cpp_lib_constexpr_iterator should not be defined before c++20"
432 # endif
433 
434 # ifdef __cpp_lib_constexpr_memory
435 #   error "__cpp_lib_constexpr_memory should not be defined before c++20"
436 # endif
437 
438 # ifdef __cpp_lib_constexpr_new
439 #   error "__cpp_lib_constexpr_new should not be defined before c++26"
440 # endif
441 
442 # ifdef __cpp_lib_constexpr_numeric
443 #   error "__cpp_lib_constexpr_numeric should not be defined before c++20"
444 # endif
445 
446 # ifdef __cpp_lib_constexpr_string
447 #   error "__cpp_lib_constexpr_string should not be defined before c++20"
448 # endif
449 
450 # ifdef __cpp_lib_constexpr_string_view
451 #   error "__cpp_lib_constexpr_string_view should not be defined before c++20"
452 # endif
453 
454 # ifdef __cpp_lib_constexpr_tuple
455 #   error "__cpp_lib_constexpr_tuple should not be defined before c++20"
456 # endif
457 
458 # ifdef __cpp_lib_constexpr_typeinfo
459 #   error "__cpp_lib_constexpr_typeinfo should not be defined before c++23"
460 # endif
461 
462 # ifdef __cpp_lib_constexpr_utility
463 #   error "__cpp_lib_constexpr_utility should not be defined before c++20"
464 # endif
465 
466 # ifdef __cpp_lib_constexpr_vector
467 #   error "__cpp_lib_constexpr_vector should not be defined before c++20"
468 # endif
469 
470 # ifdef __cpp_lib_constrained_equality
471 #   error "__cpp_lib_constrained_equality should not be defined before c++26"
472 # endif
473 
474 # ifdef __cpp_lib_containers_ranges
475 #   error "__cpp_lib_containers_ranges should not be defined before c++23"
476 # endif
477 
478 # ifdef __cpp_lib_copyable_function
479 #   error "__cpp_lib_copyable_function should not be defined before c++26"
480 # endif
481 
482 # ifdef __cpp_lib_coroutine
483 #   error "__cpp_lib_coroutine should not be defined before c++20"
484 # endif
485 
486 # ifdef __cpp_lib_debugging
487 #   error "__cpp_lib_debugging should not be defined before c++26"
488 # endif
489 
490 # ifdef __cpp_lib_default_template_type_for_algorithm_values
491 #   error "__cpp_lib_default_template_type_for_algorithm_values should not be defined before c++26"
492 # endif
493 
494 # ifdef __cpp_lib_destroying_delete
495 #   error "__cpp_lib_destroying_delete should not be defined before c++20"
496 # endif
497 
498 # ifdef __cpp_lib_enable_shared_from_this
499 #   error "__cpp_lib_enable_shared_from_this should not be defined before c++17"
500 # endif
501 
502 # ifdef __cpp_lib_endian
503 #   error "__cpp_lib_endian should not be defined before c++20"
504 # endif
505 
506 # ifdef __cpp_lib_erase_if
507 #   error "__cpp_lib_erase_if should not be defined before c++20"
508 # endif
509 
510 # ifdef __cpp_lib_exchange_function
511 #   error "__cpp_lib_exchange_function should not be defined before c++14"
512 # endif
513 
514 # ifdef __cpp_lib_execution
515 #   error "__cpp_lib_execution should not be defined before c++17"
516 # endif
517 
518 # ifdef __cpp_lib_expected
519 #   error "__cpp_lib_expected should not be defined before c++23"
520 # endif
521 
522 # ifdef __cpp_lib_filesystem
523 #   error "__cpp_lib_filesystem should not be defined before c++17"
524 # endif
525 
526 # ifdef __cpp_lib_format
527 #   error "__cpp_lib_format should not be defined before c++20"
528 # endif
529 
530 # ifdef __cpp_lib_format_path
531 #   error "__cpp_lib_format_path should not be defined before c++26"
532 # endif
533 
534 # ifdef __cpp_lib_format_ranges
535 #   error "__cpp_lib_format_ranges should not be defined before c++23"
536 # endif
537 
538 # ifdef __cpp_lib_format_uchar
539 #   error "__cpp_lib_format_uchar should not be defined before c++20"
540 # endif
541 
542 # ifdef __cpp_lib_formatters
543 #   error "__cpp_lib_formatters should not be defined before c++23"
544 # endif
545 
546 # ifdef __cpp_lib_forward_like
547 #   error "__cpp_lib_forward_like should not be defined before c++23"
548 # endif
549 
550 # ifdef __cpp_lib_freestanding_algorithm
551 #   error "__cpp_lib_freestanding_algorithm should not be defined before c++26"
552 # endif
553 
554 # ifdef __cpp_lib_freestanding_array
555 #   error "__cpp_lib_freestanding_array should not be defined before c++26"
556 # endif
557 
558 # ifdef __cpp_lib_freestanding_cstring
559 #   error "__cpp_lib_freestanding_cstring should not be defined before c++26"
560 # endif
561 
562 # ifdef __cpp_lib_freestanding_expected
563 #   error "__cpp_lib_freestanding_expected should not be defined before c++26"
564 # endif
565 
566 # ifdef __cpp_lib_freestanding_mdspan
567 #   error "__cpp_lib_freestanding_mdspan should not be defined before c++26"
568 # endif
569 
570 # ifdef __cpp_lib_freestanding_optional
571 #   error "__cpp_lib_freestanding_optional should not be defined before c++26"
572 # endif
573 
574 # ifdef __cpp_lib_freestanding_string_view
575 #   error "__cpp_lib_freestanding_string_view should not be defined before c++26"
576 # endif
577 
578 # ifdef __cpp_lib_freestanding_variant
579 #   error "__cpp_lib_freestanding_variant should not be defined before c++26"
580 # endif
581 
582 # ifdef __cpp_lib_fstream_native_handle
583 #   error "__cpp_lib_fstream_native_handle should not be defined before c++26"
584 # endif
585 
586 # ifdef __cpp_lib_function_ref
587 #   error "__cpp_lib_function_ref should not be defined before c++26"
588 # endif
589 
590 # ifdef __cpp_lib_gcd_lcm
591 #   error "__cpp_lib_gcd_lcm should not be defined before c++17"
592 # endif
593 
594 # ifdef __cpp_lib_generate_random
595 #   error "__cpp_lib_generate_random should not be defined before c++26"
596 # endif
597 
598 # ifdef __cpp_lib_generic_associative_lookup
599 #   error "__cpp_lib_generic_associative_lookup should not be defined before c++14"
600 # endif
601 
602 # ifdef __cpp_lib_generic_unordered_lookup
603 #   error "__cpp_lib_generic_unordered_lookup should not be defined before c++20"
604 # endif
605 
606 # ifdef __cpp_lib_hardware_interference_size
607 #   error "__cpp_lib_hardware_interference_size should not be defined before c++17"
608 # endif
609 
610 # ifdef __cpp_lib_has_unique_object_representations
611 #   error "__cpp_lib_has_unique_object_representations should not be defined before c++17"
612 # endif
613 
614 # ifdef __cpp_lib_hazard_pointer
615 #   error "__cpp_lib_hazard_pointer should not be defined before c++26"
616 # endif
617 
618 # ifdef __cpp_lib_hypot
619 #   error "__cpp_lib_hypot should not be defined before c++17"
620 # endif
621 
622 # ifdef __cpp_lib_incomplete_container_elements
623 #   error "__cpp_lib_incomplete_container_elements should not be defined before c++17"
624 # endif
625 
626 # ifdef __cpp_lib_inplace_vector
627 #   error "__cpp_lib_inplace_vector should not be defined before c++26"
628 # endif
629 
630 # ifdef __cpp_lib_int_pow2
631 #   error "__cpp_lib_int_pow2 should not be defined before c++20"
632 # endif
633 
634 # ifdef __cpp_lib_integer_comparison_functions
635 #   error "__cpp_lib_integer_comparison_functions should not be defined before c++20"
636 # endif
637 
638 # ifdef __cpp_lib_integer_sequence
639 #   error "__cpp_lib_integer_sequence should not be defined before c++14"
640 # endif
641 
642 # ifdef __cpp_lib_integral_constant_callable
643 #   error "__cpp_lib_integral_constant_callable should not be defined before c++14"
644 # endif
645 
646 # ifdef __cpp_lib_interpolate
647 #   error "__cpp_lib_interpolate should not be defined before c++20"
648 # endif
649 
650 # ifdef __cpp_lib_invoke
651 #   error "__cpp_lib_invoke should not be defined before c++17"
652 # endif
653 
654 # ifdef __cpp_lib_invoke_r
655 #   error "__cpp_lib_invoke_r should not be defined before c++23"
656 # endif
657 
658 # ifdef __cpp_lib_ios_noreplace
659 #   error "__cpp_lib_ios_noreplace should not be defined before c++23"
660 # endif
661 
662 # ifdef __cpp_lib_is_aggregate
663 #   error "__cpp_lib_is_aggregate should not be defined before c++17"
664 # endif
665 
666 # ifdef __cpp_lib_is_constant_evaluated
667 #   error "__cpp_lib_is_constant_evaluated should not be defined before c++20"
668 # endif
669 
670 # ifdef __cpp_lib_is_final
671 #   error "__cpp_lib_is_final should not be defined before c++14"
672 # endif
673 
674 # ifdef __cpp_lib_is_invocable
675 #   error "__cpp_lib_is_invocable should not be defined before c++17"
676 # endif
677 
678 # ifdef __cpp_lib_is_layout_compatible
679 #   error "__cpp_lib_is_layout_compatible should not be defined before c++20"
680 # endif
681 
682 # ifdef __cpp_lib_is_nothrow_convertible
683 #   error "__cpp_lib_is_nothrow_convertible should not be defined before c++20"
684 # endif
685 
686 # ifdef __cpp_lib_is_null_pointer
687 #   error "__cpp_lib_is_null_pointer should not be defined before c++14"
688 # endif
689 
690 # ifdef __cpp_lib_is_pointer_interconvertible
691 #   error "__cpp_lib_is_pointer_interconvertible should not be defined before c++20"
692 # endif
693 
694 # ifdef __cpp_lib_is_scoped_enum
695 #   error "__cpp_lib_is_scoped_enum should not be defined before c++23"
696 # endif
697 
698 # ifdef __cpp_lib_is_swappable
699 #   error "__cpp_lib_is_swappable should not be defined before c++17"
700 # endif
701 
702 # ifdef __cpp_lib_is_virtual_base_of
703 #   error "__cpp_lib_is_virtual_base_of should not be defined before c++26"
704 # endif
705 
706 # ifdef __cpp_lib_is_within_lifetime
707 #   error "__cpp_lib_is_within_lifetime should not be defined before c++26"
708 # endif
709 
710 # ifdef __cpp_lib_jthread
711 #   error "__cpp_lib_jthread should not be defined before c++20"
712 # endif
713 
714 # ifdef __cpp_lib_latch
715 #   error "__cpp_lib_latch should not be defined before c++20"
716 # endif
717 
718 # ifdef __cpp_lib_launder
719 #   error "__cpp_lib_launder should not be defined before c++17"
720 # endif
721 
722 # ifdef __cpp_lib_linalg
723 #   error "__cpp_lib_linalg should not be defined before c++26"
724 # endif
725 
726 # ifdef __cpp_lib_list_remove_return_type
727 #   error "__cpp_lib_list_remove_return_type should not be defined before c++20"
728 # endif
729 
730 # ifdef __cpp_lib_logical_traits
731 #   error "__cpp_lib_logical_traits should not be defined before c++17"
732 # endif
733 
734 # ifdef __cpp_lib_make_from_tuple
735 #   error "__cpp_lib_make_from_tuple should not be defined before c++17"
736 # endif
737 
738 # ifdef __cpp_lib_make_reverse_iterator
739 #   error "__cpp_lib_make_reverse_iterator should not be defined before c++14"
740 # endif
741 
742 # ifdef __cpp_lib_make_unique
743 #   error "__cpp_lib_make_unique should not be defined before c++14"
744 # endif
745 
746 # ifdef __cpp_lib_map_try_emplace
747 #   error "__cpp_lib_map_try_emplace should not be defined before c++17"
748 # endif
749 
750 # ifdef __cpp_lib_math_constants
751 #   error "__cpp_lib_math_constants should not be defined before c++20"
752 # endif
753 
754 # ifdef __cpp_lib_math_special_functions
755 #   error "__cpp_lib_math_special_functions should not be defined before c++17"
756 # endif
757 
758 # ifdef __cpp_lib_mdspan
759 #   error "__cpp_lib_mdspan should not be defined before c++23"
760 # endif
761 
762 # ifdef __cpp_lib_memory_resource
763 #   error "__cpp_lib_memory_resource should not be defined before c++17"
764 # endif
765 
766 # ifdef __cpp_lib_modules
767 #   error "__cpp_lib_modules should not be defined before c++23"
768 # endif
769 
770 # ifdef __cpp_lib_move_iterator_concept
771 #   error "__cpp_lib_move_iterator_concept should not be defined before c++20"
772 # endif
773 
774 # ifdef __cpp_lib_move_only_function
775 #   error "__cpp_lib_move_only_function should not be defined before c++23"
776 # endif
777 
778 # ifdef __cpp_lib_node_extract
779 #   error "__cpp_lib_node_extract should not be defined before c++17"
780 # endif
781 
782 # ifdef __cpp_lib_nonmember_container_access
783 #   error "__cpp_lib_nonmember_container_access should not be defined before c++17"
784 # endif
785 
786 # ifdef __cpp_lib_not_fn
787 #   error "__cpp_lib_not_fn should not be defined before c++17"
788 # endif
789 
790 # ifdef __cpp_lib_null_iterators
791 #   error "__cpp_lib_null_iterators should not be defined before c++14"
792 # endif
793 
794 # ifdef __cpp_lib_optional
795 #   error "__cpp_lib_optional should not be defined before c++17"
796 # endif
797 
798 # ifdef __cpp_lib_optional_range_support
799 #   error "__cpp_lib_optional_range_support should not be defined before c++26"
800 # endif
801 
802 # ifdef __cpp_lib_out_ptr
803 #   error "__cpp_lib_out_ptr should not be defined before c++23"
804 # endif
805 
806 # ifdef __cpp_lib_parallel_algorithm
807 #   error "__cpp_lib_parallel_algorithm should not be defined before c++17"
808 # endif
809 
810 # ifdef __cpp_lib_philox_engine
811 #   error "__cpp_lib_philox_engine should not be defined before c++26"
812 # endif
813 
814 # ifdef __cpp_lib_polymorphic_allocator
815 #   error "__cpp_lib_polymorphic_allocator should not be defined before c++20"
816 # endif
817 
818 # ifdef __cpp_lib_print
819 #   error "__cpp_lib_print should not be defined before c++23"
820 # endif
821 
822 # ifdef __cpp_lib_quoted_string_io
823 #   error "__cpp_lib_quoted_string_io should not be defined before c++14"
824 # endif
825 
826 # ifdef __cpp_lib_ranges
827 #   error "__cpp_lib_ranges should not be defined before c++20"
828 # endif
829 
830 # ifdef __cpp_lib_ranges_as_const
831 #   error "__cpp_lib_ranges_as_const should not be defined before c++23"
832 # endif
833 
834 # ifdef __cpp_lib_ranges_as_rvalue
835 #   error "__cpp_lib_ranges_as_rvalue should not be defined before c++23"
836 # endif
837 
838 # ifdef __cpp_lib_ranges_chunk
839 #   error "__cpp_lib_ranges_chunk should not be defined before c++23"
840 # endif
841 
842 # ifdef __cpp_lib_ranges_chunk_by
843 #   error "__cpp_lib_ranges_chunk_by should not be defined before c++23"
844 # endif
845 
846 # ifdef __cpp_lib_ranges_concat
847 #   error "__cpp_lib_ranges_concat should not be defined before c++26"
848 # endif
849 
850 # ifdef __cpp_lib_ranges_contains
851 #   error "__cpp_lib_ranges_contains should not be defined before c++23"
852 # endif
853 
854 # ifdef __cpp_lib_ranges_find_last
855 #   error "__cpp_lib_ranges_find_last should not be defined before c++23"
856 # endif
857 
858 # ifdef __cpp_lib_ranges_iota
859 #   error "__cpp_lib_ranges_iota should not be defined before c++23"
860 # endif
861 
862 # ifdef __cpp_lib_ranges_join_with
863 #   error "__cpp_lib_ranges_join_with should not be defined before c++23"
864 # endif
865 
866 # ifdef __cpp_lib_ranges_repeat
867 #   error "__cpp_lib_ranges_repeat should not be defined before c++23"
868 # endif
869 
870 # ifdef __cpp_lib_ranges_slide
871 #   error "__cpp_lib_ranges_slide should not be defined before c++23"
872 # endif
873 
874 # ifdef __cpp_lib_ranges_starts_ends_with
875 #   error "__cpp_lib_ranges_starts_ends_with should not be defined before c++23"
876 # endif
877 
878 # ifdef __cpp_lib_ranges_to_container
879 #   error "__cpp_lib_ranges_to_container should not be defined before c++23"
880 # endif
881 
882 # ifdef __cpp_lib_ranges_zip
883 #   error "__cpp_lib_ranges_zip should not be defined before c++23"
884 # endif
885 
886 # ifdef __cpp_lib_ratio
887 #   error "__cpp_lib_ratio should not be defined before c++26"
888 # endif
889 
890 # ifdef __cpp_lib_raw_memory_algorithms
891 #   error "__cpp_lib_raw_memory_algorithms should not be defined before c++17"
892 # endif
893 
894 # ifdef __cpp_lib_rcu
895 #   error "__cpp_lib_rcu should not be defined before c++26"
896 # endif
897 
898 # ifdef __cpp_lib_reference_from_temporary
899 #   error "__cpp_lib_reference_from_temporary should not be defined before c++23"
900 # endif
901 
902 # ifdef __cpp_lib_reference_wrapper
903 #   error "__cpp_lib_reference_wrapper should not be defined before c++26"
904 # endif
905 
906 # ifdef __cpp_lib_remove_cvref
907 #   error "__cpp_lib_remove_cvref should not be defined before c++20"
908 # endif
909 
910 # ifdef __cpp_lib_result_of_sfinae
911 #   error "__cpp_lib_result_of_sfinae should not be defined before c++14"
912 # endif
913 
914 # ifdef __cpp_lib_robust_nonmodifying_seq_ops
915 #   error "__cpp_lib_robust_nonmodifying_seq_ops should not be defined before c++14"
916 # endif
917 
918 # ifdef __cpp_lib_sample
919 #   error "__cpp_lib_sample should not be defined before c++17"
920 # endif
921 
922 # ifdef __cpp_lib_saturation_arithmetic
923 #   error "__cpp_lib_saturation_arithmetic should not be defined before c++26"
924 # endif
925 
926 # ifdef __cpp_lib_scoped_lock
927 #   error "__cpp_lib_scoped_lock should not be defined before c++17"
928 # endif
929 
930 # ifdef __cpp_lib_semaphore
931 #   error "__cpp_lib_semaphore should not be defined before c++20"
932 # endif
933 
934 # ifdef __cpp_lib_senders
935 #   error "__cpp_lib_senders should not be defined before c++26"
936 # endif
937 
938 # ifdef __cpp_lib_shared_mutex
939 #   error "__cpp_lib_shared_mutex should not be defined before c++17"
940 # endif
941 
942 # ifdef __cpp_lib_shared_ptr_arrays
943 #   error "__cpp_lib_shared_ptr_arrays should not be defined before c++17"
944 # endif
945 
946 # ifdef __cpp_lib_shared_ptr_weak_type
947 #   error "__cpp_lib_shared_ptr_weak_type should not be defined before c++17"
948 # endif
949 
950 # ifdef __cpp_lib_shared_timed_mutex
951 #   error "__cpp_lib_shared_timed_mutex should not be defined before c++14"
952 # endif
953 
954 # ifdef __cpp_lib_shift
955 #   error "__cpp_lib_shift should not be defined before c++20"
956 # endif
957 
958 # ifdef __cpp_lib_smart_ptr_for_overwrite
959 #   error "__cpp_lib_smart_ptr_for_overwrite should not be defined before c++20"
960 # endif
961 
962 # ifdef __cpp_lib_smart_ptr_owner_equality
963 #   error "__cpp_lib_smart_ptr_owner_equality should not be defined before c++26"
964 # endif
965 
966 # ifdef __cpp_lib_source_location
967 #   error "__cpp_lib_source_location should not be defined before c++20"
968 # endif
969 
970 # ifdef __cpp_lib_span
971 #   error "__cpp_lib_span should not be defined before c++20"
972 # endif
973 
974 # ifdef __cpp_lib_span_at
975 #   error "__cpp_lib_span_at should not be defined before c++26"
976 # endif
977 
978 # ifdef __cpp_lib_span_initializer_list
979 #   error "__cpp_lib_span_initializer_list should not be defined before c++26"
980 # endif
981 
982 # ifdef __cpp_lib_spanstream
983 #   error "__cpp_lib_spanstream should not be defined before c++23"
984 # endif
985 
986 # ifdef __cpp_lib_ssize
987 #   error "__cpp_lib_ssize should not be defined before c++20"
988 # endif
989 
990 # ifdef __cpp_lib_sstream_from_string_view
991 #   error "__cpp_lib_sstream_from_string_view should not be defined before c++26"
992 # endif
993 
994 # ifdef __cpp_lib_stacktrace
995 #   error "__cpp_lib_stacktrace should not be defined before c++23"
996 # endif
997 
998 # ifdef __cpp_lib_starts_ends_with
999 #   error "__cpp_lib_starts_ends_with should not be defined before c++20"
1000 # endif
1001 
1002 # ifdef __cpp_lib_stdatomic_h
1003 #   error "__cpp_lib_stdatomic_h should not be defined before c++23"
1004 # endif
1005 
1006 # ifdef __cpp_lib_string_contains
1007 #   error "__cpp_lib_string_contains should not be defined before c++23"
1008 # endif
1009 
1010 # ifdef __cpp_lib_string_resize_and_overwrite
1011 #   error "__cpp_lib_string_resize_and_overwrite should not be defined before c++23"
1012 # endif
1013 
1014 # ifdef __cpp_lib_string_udls
1015 #   error "__cpp_lib_string_udls should not be defined before c++14"
1016 # endif
1017 
1018 # ifdef __cpp_lib_string_view
1019 #   error "__cpp_lib_string_view should not be defined before c++17"
1020 # endif
1021 
1022 # ifdef __cpp_lib_submdspan
1023 #   error "__cpp_lib_submdspan should not be defined before c++26"
1024 # endif
1025 
1026 # ifdef __cpp_lib_syncbuf
1027 #   error "__cpp_lib_syncbuf should not be defined before c++20"
1028 # endif
1029 
1030 # ifdef __cpp_lib_text_encoding
1031 #   error "__cpp_lib_text_encoding should not be defined before c++26"
1032 # endif
1033 
1034 # ifdef __cpp_lib_three_way_comparison
1035 #   error "__cpp_lib_three_way_comparison should not be defined before c++20"
1036 # endif
1037 
1038 # ifdef __cpp_lib_to_address
1039 #   error "__cpp_lib_to_address should not be defined before c++20"
1040 # endif
1041 
1042 # ifdef __cpp_lib_to_array
1043 #   error "__cpp_lib_to_array should not be defined before c++20"
1044 # endif
1045 
1046 # ifdef __cpp_lib_to_chars
1047 #   error "__cpp_lib_to_chars should not be defined before c++17"
1048 # endif
1049 
1050 # ifdef __cpp_lib_to_string
1051 #   error "__cpp_lib_to_string should not be defined before c++26"
1052 # endif
1053 
1054 # ifdef __cpp_lib_to_underlying
1055 #   error "__cpp_lib_to_underlying should not be defined before c++23"
1056 # endif
1057 
1058 # ifdef __cpp_lib_transformation_trait_aliases
1059 #   error "__cpp_lib_transformation_trait_aliases should not be defined before c++14"
1060 # endif
1061 
1062 # ifdef __cpp_lib_transparent_operators
1063 #   error "__cpp_lib_transparent_operators should not be defined before c++14"
1064 # endif
1065 
1066 # ifdef __cpp_lib_tuple_element_t
1067 #   error "__cpp_lib_tuple_element_t should not be defined before c++14"
1068 # endif
1069 
1070 # ifdef __cpp_lib_tuple_like
1071 #   error "__cpp_lib_tuple_like should not be defined before c++23"
1072 # endif
1073 
1074 # ifdef __cpp_lib_tuples_by_type
1075 #   error "__cpp_lib_tuples_by_type should not be defined before c++14"
1076 # endif
1077 
1078 # ifdef __cpp_lib_type_identity
1079 #   error "__cpp_lib_type_identity should not be defined before c++20"
1080 # endif
1081 
1082 # ifdef __cpp_lib_type_trait_variable_templates
1083 #   error "__cpp_lib_type_trait_variable_templates should not be defined before c++17"
1084 # endif
1085 
1086 # ifdef __cpp_lib_uncaught_exceptions
1087 #   error "__cpp_lib_uncaught_exceptions should not be defined before c++17"
1088 # endif
1089 
1090 # ifdef __cpp_lib_unordered_map_try_emplace
1091 #   error "__cpp_lib_unordered_map_try_emplace should not be defined before c++17"
1092 # endif
1093 
1094 # ifdef __cpp_lib_unreachable
1095 #   error "__cpp_lib_unreachable should not be defined before c++23"
1096 # endif
1097 
1098 # ifdef __cpp_lib_unwrap_ref
1099 #   error "__cpp_lib_unwrap_ref should not be defined before c++20"
1100 # endif
1101 
1102 # ifdef __cpp_lib_variant
1103 #   error "__cpp_lib_variant should not be defined before c++17"
1104 # endif
1105 
1106 # ifdef __cpp_lib_void_t
1107 #   error "__cpp_lib_void_t should not be defined before c++17"
1108 # endif
1109 
1110 #elif TEST_STD_VER == 14
1111 
1112 # ifdef __cpp_lib_adaptor_iterator_pair_constructor
1113 #   error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++23"
1114 # endif
1115 
1116 # ifdef __cpp_lib_addressof_constexpr
1117 #   error "__cpp_lib_addressof_constexpr should not be defined before c++17"
1118 # endif
1119 
1120 # ifdef __cpp_lib_allocate_at_least
1121 #   error "__cpp_lib_allocate_at_least should not be defined before c++23"
1122 # endif
1123 
1124 # ifdef __cpp_lib_allocator_traits_is_always_equal
1125 #   error "__cpp_lib_allocator_traits_is_always_equal should not be defined before c++17"
1126 # endif
1127 
1128 # ifdef __cpp_lib_any
1129 #   error "__cpp_lib_any should not be defined before c++17"
1130 # endif
1131 
1132 # ifdef __cpp_lib_apply
1133 #   error "__cpp_lib_apply should not be defined before c++17"
1134 # endif
1135 
1136 # ifdef __cpp_lib_array_constexpr
1137 #   error "__cpp_lib_array_constexpr should not be defined before c++17"
1138 # endif
1139 
1140 # ifdef __cpp_lib_as_const
1141 #   error "__cpp_lib_as_const should not be defined before c++17"
1142 # endif
1143 
1144 # ifdef __cpp_lib_associative_heterogeneous_erasure
1145 #   error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
1146 # endif
1147 
1148 # ifdef __cpp_lib_associative_heterogeneous_insertion
1149 #   error "__cpp_lib_associative_heterogeneous_insertion should not be defined before c++26"
1150 # endif
1151 
1152 # ifdef __cpp_lib_assume_aligned
1153 #   error "__cpp_lib_assume_aligned should not be defined before c++20"
1154 # endif
1155 
1156 # ifdef __cpp_lib_atomic_flag_test
1157 #   error "__cpp_lib_atomic_flag_test should not be defined before c++20"
1158 # endif
1159 
1160 # ifdef __cpp_lib_atomic_float
1161 #   error "__cpp_lib_atomic_float should not be defined before c++20"
1162 # endif
1163 
1164 # ifdef __cpp_lib_atomic_is_always_lock_free
1165 #   error "__cpp_lib_atomic_is_always_lock_free should not be defined before c++17"
1166 # endif
1167 
1168 # ifdef __cpp_lib_atomic_lock_free_type_aliases
1169 #   error "__cpp_lib_atomic_lock_free_type_aliases should not be defined before c++20"
1170 # endif
1171 
1172 # ifdef __cpp_lib_atomic_min_max
1173 #   error "__cpp_lib_atomic_min_max should not be defined before c++26"
1174 # endif
1175 
1176 # ifdef __cpp_lib_atomic_ref
1177 #   error "__cpp_lib_atomic_ref should not be defined before c++20"
1178 # endif
1179 
1180 # ifdef __cpp_lib_atomic_shared_ptr
1181 #   error "__cpp_lib_atomic_shared_ptr should not be defined before c++20"
1182 # endif
1183 
1184 # ifdef __cpp_lib_atomic_value_initialization
1185 #   error "__cpp_lib_atomic_value_initialization should not be defined before c++20"
1186 # endif
1187 
1188 # ifdef __cpp_lib_atomic_wait
1189 #   error "__cpp_lib_atomic_wait should not be defined before c++20"
1190 # endif
1191 
1192 # ifdef __cpp_lib_barrier
1193 #   error "__cpp_lib_barrier should not be defined before c++20"
1194 # endif
1195 
1196 # ifdef __cpp_lib_bind_back
1197 #   error "__cpp_lib_bind_back should not be defined before c++23"
1198 # endif
1199 
1200 # ifdef __cpp_lib_bind_front
1201 #   error "__cpp_lib_bind_front should not be defined before c++20"
1202 # endif
1203 
1204 # ifdef __cpp_lib_bit_cast
1205 #   error "__cpp_lib_bit_cast should not be defined before c++20"
1206 # endif
1207 
1208 # ifdef __cpp_lib_bitops
1209 #   error "__cpp_lib_bitops should not be defined before c++20"
1210 # endif
1211 
1212 # ifdef __cpp_lib_bitset
1213 #   error "__cpp_lib_bitset should not be defined before c++26"
1214 # endif
1215 
1216 # ifdef __cpp_lib_bool_constant
1217 #   error "__cpp_lib_bool_constant should not be defined before c++17"
1218 # endif
1219 
1220 # ifdef __cpp_lib_bounded_array_traits
1221 #   error "__cpp_lib_bounded_array_traits should not be defined before c++20"
1222 # endif
1223 
1224 # ifdef __cpp_lib_boyer_moore_searcher
1225 #   error "__cpp_lib_boyer_moore_searcher should not be defined before c++17"
1226 # endif
1227 
1228 # ifdef __cpp_lib_byte
1229 #   error "__cpp_lib_byte should not be defined before c++17"
1230 # endif
1231 
1232 # ifdef __cpp_lib_byteswap
1233 #   error "__cpp_lib_byteswap should not be defined before c++23"
1234 # endif
1235 
1236 # ifdef __cpp_lib_char8_t
1237 #   error "__cpp_lib_char8_t should not be defined before c++20"
1238 # endif
1239 
1240 # ifdef __cpp_lib_chrono
1241 #   error "__cpp_lib_chrono should not be defined before c++17"
1242 # endif
1243 
1244 # ifndef __cpp_lib_chrono_udls
1245 #   error "__cpp_lib_chrono_udls should be defined in c++14"
1246 # endif
1247 # if __cpp_lib_chrono_udls != 201304L
1248 #   error "__cpp_lib_chrono_udls should have the value 201304L in c++14"
1249 # endif
1250 
1251 # ifdef __cpp_lib_clamp
1252 #   error "__cpp_lib_clamp should not be defined before c++17"
1253 # endif
1254 
1255 # ifndef __cpp_lib_complex_udls
1256 #   error "__cpp_lib_complex_udls should be defined in c++14"
1257 # endif
1258 # if __cpp_lib_complex_udls != 201309L
1259 #   error "__cpp_lib_complex_udls should have the value 201309L in c++14"
1260 # endif
1261 
1262 # ifdef __cpp_lib_concepts
1263 #   error "__cpp_lib_concepts should not be defined before c++20"
1264 # endif
1265 
1266 # ifdef __cpp_lib_constexpr_algorithms
1267 #   error "__cpp_lib_constexpr_algorithms should not be defined before c++20"
1268 # endif
1269 
1270 # ifdef __cpp_lib_constexpr_bitset
1271 #   error "__cpp_lib_constexpr_bitset should not be defined before c++23"
1272 # endif
1273 
1274 # ifdef __cpp_lib_constexpr_charconv
1275 #   error "__cpp_lib_constexpr_charconv should not be defined before c++23"
1276 # endif
1277 
1278 # ifdef __cpp_lib_constexpr_cmath
1279 #   error "__cpp_lib_constexpr_cmath should not be defined before c++23"
1280 # endif
1281 
1282 # ifdef __cpp_lib_constexpr_complex
1283 #   error "__cpp_lib_constexpr_complex should not be defined before c++20"
1284 # endif
1285 
1286 # ifdef __cpp_lib_constexpr_dynamic_alloc
1287 #   error "__cpp_lib_constexpr_dynamic_alloc should not be defined before c++20"
1288 # endif
1289 
1290 # ifdef __cpp_lib_constexpr_functional
1291 #   error "__cpp_lib_constexpr_functional should not be defined before c++20"
1292 # endif
1293 
1294 # ifdef __cpp_lib_constexpr_iterator
1295 #   error "__cpp_lib_constexpr_iterator should not be defined before c++20"
1296 # endif
1297 
1298 # ifdef __cpp_lib_constexpr_memory
1299 #   error "__cpp_lib_constexpr_memory should not be defined before c++20"
1300 # endif
1301 
1302 # ifdef __cpp_lib_constexpr_new
1303 #   error "__cpp_lib_constexpr_new should not be defined before c++26"
1304 # endif
1305 
1306 # ifdef __cpp_lib_constexpr_numeric
1307 #   error "__cpp_lib_constexpr_numeric should not be defined before c++20"
1308 # endif
1309 
1310 # ifdef __cpp_lib_constexpr_string
1311 #   error "__cpp_lib_constexpr_string should not be defined before c++20"
1312 # endif
1313 
1314 # ifdef __cpp_lib_constexpr_string_view
1315 #   error "__cpp_lib_constexpr_string_view should not be defined before c++20"
1316 # endif
1317 
1318 # ifdef __cpp_lib_constexpr_tuple
1319 #   error "__cpp_lib_constexpr_tuple should not be defined before c++20"
1320 # endif
1321 
1322 # ifdef __cpp_lib_constexpr_typeinfo
1323 #   error "__cpp_lib_constexpr_typeinfo should not be defined before c++23"
1324 # endif
1325 
1326 # ifdef __cpp_lib_constexpr_utility
1327 #   error "__cpp_lib_constexpr_utility should not be defined before c++20"
1328 # endif
1329 
1330 # ifdef __cpp_lib_constexpr_vector
1331 #   error "__cpp_lib_constexpr_vector should not be defined before c++20"
1332 # endif
1333 
1334 # ifdef __cpp_lib_constrained_equality
1335 #   error "__cpp_lib_constrained_equality should not be defined before c++26"
1336 # endif
1337 
1338 # ifdef __cpp_lib_containers_ranges
1339 #   error "__cpp_lib_containers_ranges should not be defined before c++23"
1340 # endif
1341 
1342 # ifdef __cpp_lib_copyable_function
1343 #   error "__cpp_lib_copyable_function should not be defined before c++26"
1344 # endif
1345 
1346 # ifdef __cpp_lib_coroutine
1347 #   error "__cpp_lib_coroutine should not be defined before c++20"
1348 # endif
1349 
1350 # ifdef __cpp_lib_debugging
1351 #   error "__cpp_lib_debugging should not be defined before c++26"
1352 # endif
1353 
1354 # ifdef __cpp_lib_default_template_type_for_algorithm_values
1355 #   error "__cpp_lib_default_template_type_for_algorithm_values should not be defined before c++26"
1356 # endif
1357 
1358 # ifdef __cpp_lib_destroying_delete
1359 #   error "__cpp_lib_destroying_delete should not be defined before c++20"
1360 # endif
1361 
1362 # ifdef __cpp_lib_enable_shared_from_this
1363 #   error "__cpp_lib_enable_shared_from_this should not be defined before c++17"
1364 # endif
1365 
1366 # ifdef __cpp_lib_endian
1367 #   error "__cpp_lib_endian should not be defined before c++20"
1368 # endif
1369 
1370 # ifdef __cpp_lib_erase_if
1371 #   error "__cpp_lib_erase_if should not be defined before c++20"
1372 # endif
1373 
1374 # ifndef __cpp_lib_exchange_function
1375 #   error "__cpp_lib_exchange_function should be defined in c++14"
1376 # endif
1377 # if __cpp_lib_exchange_function != 201304L
1378 #   error "__cpp_lib_exchange_function should have the value 201304L in c++14"
1379 # endif
1380 
1381 # ifdef __cpp_lib_execution
1382 #   error "__cpp_lib_execution should not be defined before c++17"
1383 # endif
1384 
1385 # ifdef __cpp_lib_expected
1386 #   error "__cpp_lib_expected should not be defined before c++23"
1387 # endif
1388 
1389 # ifdef __cpp_lib_filesystem
1390 #   error "__cpp_lib_filesystem should not be defined before c++17"
1391 # endif
1392 
1393 # ifdef __cpp_lib_format
1394 #   error "__cpp_lib_format should not be defined before c++20"
1395 # endif
1396 
1397 # ifdef __cpp_lib_format_path
1398 #   error "__cpp_lib_format_path should not be defined before c++26"
1399 # endif
1400 
1401 # ifdef __cpp_lib_format_ranges
1402 #   error "__cpp_lib_format_ranges should not be defined before c++23"
1403 # endif
1404 
1405 # ifdef __cpp_lib_format_uchar
1406 #   error "__cpp_lib_format_uchar should not be defined before c++20"
1407 # endif
1408 
1409 # ifdef __cpp_lib_formatters
1410 #   error "__cpp_lib_formatters should not be defined before c++23"
1411 # endif
1412 
1413 # ifdef __cpp_lib_forward_like
1414 #   error "__cpp_lib_forward_like should not be defined before c++23"
1415 # endif
1416 
1417 # ifdef __cpp_lib_freestanding_algorithm
1418 #   error "__cpp_lib_freestanding_algorithm should not be defined before c++26"
1419 # endif
1420 
1421 # ifdef __cpp_lib_freestanding_array
1422 #   error "__cpp_lib_freestanding_array should not be defined before c++26"
1423 # endif
1424 
1425 # ifdef __cpp_lib_freestanding_cstring
1426 #   error "__cpp_lib_freestanding_cstring should not be defined before c++26"
1427 # endif
1428 
1429 # ifdef __cpp_lib_freestanding_expected
1430 #   error "__cpp_lib_freestanding_expected should not be defined before c++26"
1431 # endif
1432 
1433 # ifdef __cpp_lib_freestanding_mdspan
1434 #   error "__cpp_lib_freestanding_mdspan should not be defined before c++26"
1435 # endif
1436 
1437 # ifdef __cpp_lib_freestanding_optional
1438 #   error "__cpp_lib_freestanding_optional should not be defined before c++26"
1439 # endif
1440 
1441 # ifdef __cpp_lib_freestanding_string_view
1442 #   error "__cpp_lib_freestanding_string_view should not be defined before c++26"
1443 # endif
1444 
1445 # ifdef __cpp_lib_freestanding_variant
1446 #   error "__cpp_lib_freestanding_variant should not be defined before c++26"
1447 # endif
1448 
1449 # ifdef __cpp_lib_fstream_native_handle
1450 #   error "__cpp_lib_fstream_native_handle should not be defined before c++26"
1451 # endif
1452 
1453 # ifdef __cpp_lib_function_ref
1454 #   error "__cpp_lib_function_ref should not be defined before c++26"
1455 # endif
1456 
1457 # ifdef __cpp_lib_gcd_lcm
1458 #   error "__cpp_lib_gcd_lcm should not be defined before c++17"
1459 # endif
1460 
1461 # ifdef __cpp_lib_generate_random
1462 #   error "__cpp_lib_generate_random should not be defined before c++26"
1463 # endif
1464 
1465 # ifndef __cpp_lib_generic_associative_lookup
1466 #   error "__cpp_lib_generic_associative_lookup should be defined in c++14"
1467 # endif
1468 # if __cpp_lib_generic_associative_lookup != 201304L
1469 #   error "__cpp_lib_generic_associative_lookup should have the value 201304L in c++14"
1470 # endif
1471 
1472 # ifdef __cpp_lib_generic_unordered_lookup
1473 #   error "__cpp_lib_generic_unordered_lookup should not be defined before c++20"
1474 # endif
1475 
1476 # ifdef __cpp_lib_hardware_interference_size
1477 #   error "__cpp_lib_hardware_interference_size should not be defined before c++17"
1478 # endif
1479 
1480 # ifdef __cpp_lib_has_unique_object_representations
1481 #   error "__cpp_lib_has_unique_object_representations should not be defined before c++17"
1482 # endif
1483 
1484 # ifdef __cpp_lib_hazard_pointer
1485 #   error "__cpp_lib_hazard_pointer should not be defined before c++26"
1486 # endif
1487 
1488 # ifdef __cpp_lib_hypot
1489 #   error "__cpp_lib_hypot should not be defined before c++17"
1490 # endif
1491 
1492 # ifdef __cpp_lib_incomplete_container_elements
1493 #   error "__cpp_lib_incomplete_container_elements should not be defined before c++17"
1494 # endif
1495 
1496 # ifdef __cpp_lib_inplace_vector
1497 #   error "__cpp_lib_inplace_vector should not be defined before c++26"
1498 # endif
1499 
1500 # ifdef __cpp_lib_int_pow2
1501 #   error "__cpp_lib_int_pow2 should not be defined before c++20"
1502 # endif
1503 
1504 # ifdef __cpp_lib_integer_comparison_functions
1505 #   error "__cpp_lib_integer_comparison_functions should not be defined before c++20"
1506 # endif
1507 
1508 # ifndef __cpp_lib_integer_sequence
1509 #   error "__cpp_lib_integer_sequence should be defined in c++14"
1510 # endif
1511 # if __cpp_lib_integer_sequence != 201304L
1512 #   error "__cpp_lib_integer_sequence should have the value 201304L in c++14"
1513 # endif
1514 
1515 # ifndef __cpp_lib_integral_constant_callable
1516 #   error "__cpp_lib_integral_constant_callable should be defined in c++14"
1517 # endif
1518 # if __cpp_lib_integral_constant_callable != 201304L
1519 #   error "__cpp_lib_integral_constant_callable should have the value 201304L in c++14"
1520 # endif
1521 
1522 # ifdef __cpp_lib_interpolate
1523 #   error "__cpp_lib_interpolate should not be defined before c++20"
1524 # endif
1525 
1526 # ifdef __cpp_lib_invoke
1527 #   error "__cpp_lib_invoke should not be defined before c++17"
1528 # endif
1529 
1530 # ifdef __cpp_lib_invoke_r
1531 #   error "__cpp_lib_invoke_r should not be defined before c++23"
1532 # endif
1533 
1534 # ifdef __cpp_lib_ios_noreplace
1535 #   error "__cpp_lib_ios_noreplace should not be defined before c++23"
1536 # endif
1537 
1538 # ifdef __cpp_lib_is_aggregate
1539 #   error "__cpp_lib_is_aggregate should not be defined before c++17"
1540 # endif
1541 
1542 # ifdef __cpp_lib_is_constant_evaluated
1543 #   error "__cpp_lib_is_constant_evaluated should not be defined before c++20"
1544 # endif
1545 
1546 # ifndef __cpp_lib_is_final
1547 #   error "__cpp_lib_is_final should be defined in c++14"
1548 # endif
1549 # if __cpp_lib_is_final != 201402L
1550 #   error "__cpp_lib_is_final should have the value 201402L in c++14"
1551 # endif
1552 
1553 # ifdef __cpp_lib_is_invocable
1554 #   error "__cpp_lib_is_invocable should not be defined before c++17"
1555 # endif
1556 
1557 # ifdef __cpp_lib_is_layout_compatible
1558 #   error "__cpp_lib_is_layout_compatible should not be defined before c++20"
1559 # endif
1560 
1561 # ifdef __cpp_lib_is_nothrow_convertible
1562 #   error "__cpp_lib_is_nothrow_convertible should not be defined before c++20"
1563 # endif
1564 
1565 # ifndef __cpp_lib_is_null_pointer
1566 #   error "__cpp_lib_is_null_pointer should be defined in c++14"
1567 # endif
1568 # if __cpp_lib_is_null_pointer != 201309L
1569 #   error "__cpp_lib_is_null_pointer should have the value 201309L in c++14"
1570 # endif
1571 
1572 # ifdef __cpp_lib_is_pointer_interconvertible
1573 #   error "__cpp_lib_is_pointer_interconvertible should not be defined before c++20"
1574 # endif
1575 
1576 # ifdef __cpp_lib_is_scoped_enum
1577 #   error "__cpp_lib_is_scoped_enum should not be defined before c++23"
1578 # endif
1579 
1580 # ifdef __cpp_lib_is_swappable
1581 #   error "__cpp_lib_is_swappable should not be defined before c++17"
1582 # endif
1583 
1584 # ifdef __cpp_lib_is_virtual_base_of
1585 #   error "__cpp_lib_is_virtual_base_of should not be defined before c++26"
1586 # endif
1587 
1588 # ifdef __cpp_lib_is_within_lifetime
1589 #   error "__cpp_lib_is_within_lifetime should not be defined before c++26"
1590 # endif
1591 
1592 # ifdef __cpp_lib_jthread
1593 #   error "__cpp_lib_jthread should not be defined before c++20"
1594 # endif
1595 
1596 # ifdef __cpp_lib_latch
1597 #   error "__cpp_lib_latch should not be defined before c++20"
1598 # endif
1599 
1600 # ifdef __cpp_lib_launder
1601 #   error "__cpp_lib_launder should not be defined before c++17"
1602 # endif
1603 
1604 # ifdef __cpp_lib_linalg
1605 #   error "__cpp_lib_linalg should not be defined before c++26"
1606 # endif
1607 
1608 # ifdef __cpp_lib_list_remove_return_type
1609 #   error "__cpp_lib_list_remove_return_type should not be defined before c++20"
1610 # endif
1611 
1612 # ifdef __cpp_lib_logical_traits
1613 #   error "__cpp_lib_logical_traits should not be defined before c++17"
1614 # endif
1615 
1616 # ifdef __cpp_lib_make_from_tuple
1617 #   error "__cpp_lib_make_from_tuple should not be defined before c++17"
1618 # endif
1619 
1620 # ifndef __cpp_lib_make_reverse_iterator
1621 #   error "__cpp_lib_make_reverse_iterator should be defined in c++14"
1622 # endif
1623 # if __cpp_lib_make_reverse_iterator != 201402L
1624 #   error "__cpp_lib_make_reverse_iterator should have the value 201402L in c++14"
1625 # endif
1626 
1627 # ifndef __cpp_lib_make_unique
1628 #   error "__cpp_lib_make_unique should be defined in c++14"
1629 # endif
1630 # if __cpp_lib_make_unique != 201304L
1631 #   error "__cpp_lib_make_unique should have the value 201304L in c++14"
1632 # endif
1633 
1634 # ifdef __cpp_lib_map_try_emplace
1635 #   error "__cpp_lib_map_try_emplace should not be defined before c++17"
1636 # endif
1637 
1638 # ifdef __cpp_lib_math_constants
1639 #   error "__cpp_lib_math_constants should not be defined before c++20"
1640 # endif
1641 
1642 # ifdef __cpp_lib_math_special_functions
1643 #   error "__cpp_lib_math_special_functions should not be defined before c++17"
1644 # endif
1645 
1646 # ifdef __cpp_lib_mdspan
1647 #   error "__cpp_lib_mdspan should not be defined before c++23"
1648 # endif
1649 
1650 # ifdef __cpp_lib_memory_resource
1651 #   error "__cpp_lib_memory_resource should not be defined before c++17"
1652 # endif
1653 
1654 # ifdef __cpp_lib_modules
1655 #   error "__cpp_lib_modules should not be defined before c++23"
1656 # endif
1657 
1658 # ifdef __cpp_lib_move_iterator_concept
1659 #   error "__cpp_lib_move_iterator_concept should not be defined before c++20"
1660 # endif
1661 
1662 # ifdef __cpp_lib_move_only_function
1663 #   error "__cpp_lib_move_only_function should not be defined before c++23"
1664 # endif
1665 
1666 # ifdef __cpp_lib_node_extract
1667 #   error "__cpp_lib_node_extract should not be defined before c++17"
1668 # endif
1669 
1670 # ifdef __cpp_lib_nonmember_container_access
1671 #   error "__cpp_lib_nonmember_container_access should not be defined before c++17"
1672 # endif
1673 
1674 # ifdef __cpp_lib_not_fn
1675 #   error "__cpp_lib_not_fn should not be defined before c++17"
1676 # endif
1677 
1678 # ifndef __cpp_lib_null_iterators
1679 #   error "__cpp_lib_null_iterators should be defined in c++14"
1680 # endif
1681 # if __cpp_lib_null_iterators != 201304L
1682 #   error "__cpp_lib_null_iterators should have the value 201304L in c++14"
1683 # endif
1684 
1685 # ifdef __cpp_lib_optional
1686 #   error "__cpp_lib_optional should not be defined before c++17"
1687 # endif
1688 
1689 # ifdef __cpp_lib_optional_range_support
1690 #   error "__cpp_lib_optional_range_support should not be defined before c++26"
1691 # endif
1692 
1693 # ifdef __cpp_lib_out_ptr
1694 #   error "__cpp_lib_out_ptr should not be defined before c++23"
1695 # endif
1696 
1697 # ifdef __cpp_lib_parallel_algorithm
1698 #   error "__cpp_lib_parallel_algorithm should not be defined before c++17"
1699 # endif
1700 
1701 # ifdef __cpp_lib_philox_engine
1702 #   error "__cpp_lib_philox_engine should not be defined before c++26"
1703 # endif
1704 
1705 # ifdef __cpp_lib_polymorphic_allocator
1706 #   error "__cpp_lib_polymorphic_allocator should not be defined before c++20"
1707 # endif
1708 
1709 # ifdef __cpp_lib_print
1710 #   error "__cpp_lib_print should not be defined before c++23"
1711 # endif
1712 
1713 # if !defined(_LIBCPP_VERSION) || !defined(_LIBCPP_HAS_NO_LOCALIZATION)
1714 #   ifndef __cpp_lib_quoted_string_io
1715 #     error "__cpp_lib_quoted_string_io should be defined in c++14"
1716 #   endif
1717 #   if __cpp_lib_quoted_string_io != 201304L
1718 #     error "__cpp_lib_quoted_string_io should have the value 201304L in c++14"
1719 #   endif
1720 # else
1721 #   ifdef __cpp_lib_quoted_string_io
1722 #     error "__cpp_lib_quoted_string_io should not be defined when the requirement '!defined(_LIBCPP_VERSION) || !defined(_LIBCPP_HAS_NO_LOCALIZATION)' is not met!"
1723 #   endif
1724 # endif
1725 
1726 # ifdef __cpp_lib_ranges
1727 #   error "__cpp_lib_ranges should not be defined before c++20"
1728 # endif
1729 
1730 # ifdef __cpp_lib_ranges_as_const
1731 #   error "__cpp_lib_ranges_as_const should not be defined before c++23"
1732 # endif
1733 
1734 # ifdef __cpp_lib_ranges_as_rvalue
1735 #   error "__cpp_lib_ranges_as_rvalue should not be defined before c++23"
1736 # endif
1737 
1738 # ifdef __cpp_lib_ranges_chunk
1739 #   error "__cpp_lib_ranges_chunk should not be defined before c++23"
1740 # endif
1741 
1742 # ifdef __cpp_lib_ranges_chunk_by
1743 #   error "__cpp_lib_ranges_chunk_by should not be defined before c++23"
1744 # endif
1745 
1746 # ifdef __cpp_lib_ranges_concat
1747 #   error "__cpp_lib_ranges_concat should not be defined before c++26"
1748 # endif
1749 
1750 # ifdef __cpp_lib_ranges_contains
1751 #   error "__cpp_lib_ranges_contains should not be defined before c++23"
1752 # endif
1753 
1754 # ifdef __cpp_lib_ranges_find_last
1755 #   error "__cpp_lib_ranges_find_last should not be defined before c++23"
1756 # endif
1757 
1758 # ifdef __cpp_lib_ranges_iota
1759 #   error "__cpp_lib_ranges_iota should not be defined before c++23"
1760 # endif
1761 
1762 # ifdef __cpp_lib_ranges_join_with
1763 #   error "__cpp_lib_ranges_join_with should not be defined before c++23"
1764 # endif
1765 
1766 # ifdef __cpp_lib_ranges_repeat
1767 #   error "__cpp_lib_ranges_repeat should not be defined before c++23"
1768 # endif
1769 
1770 # ifdef __cpp_lib_ranges_slide
1771 #   error "__cpp_lib_ranges_slide should not be defined before c++23"
1772 # endif
1773 
1774 # ifdef __cpp_lib_ranges_starts_ends_with
1775 #   error "__cpp_lib_ranges_starts_ends_with should not be defined before c++23"
1776 # endif
1777 
1778 # ifdef __cpp_lib_ranges_to_container
1779 #   error "__cpp_lib_ranges_to_container should not be defined before c++23"
1780 # endif
1781 
1782 # ifdef __cpp_lib_ranges_zip
1783 #   error "__cpp_lib_ranges_zip should not be defined before c++23"
1784 # endif
1785 
1786 # ifdef __cpp_lib_ratio
1787 #   error "__cpp_lib_ratio should not be defined before c++26"
1788 # endif
1789 
1790 # ifdef __cpp_lib_raw_memory_algorithms
1791 #   error "__cpp_lib_raw_memory_algorithms should not be defined before c++17"
1792 # endif
1793 
1794 # ifdef __cpp_lib_rcu
1795 #   error "__cpp_lib_rcu should not be defined before c++26"
1796 # endif
1797 
1798 # ifdef __cpp_lib_reference_from_temporary
1799 #   error "__cpp_lib_reference_from_temporary should not be defined before c++23"
1800 # endif
1801 
1802 # ifdef __cpp_lib_reference_wrapper
1803 #   error "__cpp_lib_reference_wrapper should not be defined before c++26"
1804 # endif
1805 
1806 # ifdef __cpp_lib_remove_cvref
1807 #   error "__cpp_lib_remove_cvref should not be defined before c++20"
1808 # endif
1809 
1810 # ifndef __cpp_lib_result_of_sfinae
1811 #   error "__cpp_lib_result_of_sfinae should be defined in c++14"
1812 # endif
1813 # if __cpp_lib_result_of_sfinae != 201210L
1814 #   error "__cpp_lib_result_of_sfinae should have the value 201210L in c++14"
1815 # endif
1816 
1817 # ifndef __cpp_lib_robust_nonmodifying_seq_ops
1818 #   error "__cpp_lib_robust_nonmodifying_seq_ops should be defined in c++14"
1819 # endif
1820 # if __cpp_lib_robust_nonmodifying_seq_ops != 201304L
1821 #   error "__cpp_lib_robust_nonmodifying_seq_ops should have the value 201304L in c++14"
1822 # endif
1823 
1824 # ifdef __cpp_lib_sample
1825 #   error "__cpp_lib_sample should not be defined before c++17"
1826 # endif
1827 
1828 # ifdef __cpp_lib_saturation_arithmetic
1829 #   error "__cpp_lib_saturation_arithmetic should not be defined before c++26"
1830 # endif
1831 
1832 # ifdef __cpp_lib_scoped_lock
1833 #   error "__cpp_lib_scoped_lock should not be defined before c++17"
1834 # endif
1835 
1836 # ifdef __cpp_lib_semaphore
1837 #   error "__cpp_lib_semaphore should not be defined before c++20"
1838 # endif
1839 
1840 # ifdef __cpp_lib_senders
1841 #   error "__cpp_lib_senders should not be defined before c++26"
1842 # endif
1843 
1844 # ifdef __cpp_lib_shared_mutex
1845 #   error "__cpp_lib_shared_mutex should not be defined before c++17"
1846 # endif
1847 
1848 # ifdef __cpp_lib_shared_ptr_arrays
1849 #   error "__cpp_lib_shared_ptr_arrays should not be defined before c++17"
1850 # endif
1851 
1852 # ifdef __cpp_lib_shared_ptr_weak_type
1853 #   error "__cpp_lib_shared_ptr_weak_type should not be defined before c++17"
1854 # endif
1855 
1856 # if !defined(_LIBCPP_HAS_NO_THREADS)
1857 #   ifndef __cpp_lib_shared_timed_mutex
1858 #     error "__cpp_lib_shared_timed_mutex should be defined in c++14"
1859 #   endif
1860 #   if __cpp_lib_shared_timed_mutex != 201402L
1861 #     error "__cpp_lib_shared_timed_mutex should have the value 201402L in c++14"
1862 #   endif
1863 # else
1864 #   ifdef __cpp_lib_shared_timed_mutex
1865 #     error "__cpp_lib_shared_timed_mutex should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS)' is not met!"
1866 #   endif
1867 # endif
1868 
1869 # ifdef __cpp_lib_shift
1870 #   error "__cpp_lib_shift should not be defined before c++20"
1871 # endif
1872 
1873 # ifdef __cpp_lib_smart_ptr_for_overwrite
1874 #   error "__cpp_lib_smart_ptr_for_overwrite should not be defined before c++20"
1875 # endif
1876 
1877 # ifdef __cpp_lib_smart_ptr_owner_equality
1878 #   error "__cpp_lib_smart_ptr_owner_equality should not be defined before c++26"
1879 # endif
1880 
1881 # ifdef __cpp_lib_source_location
1882 #   error "__cpp_lib_source_location should not be defined before c++20"
1883 # endif
1884 
1885 # ifdef __cpp_lib_span
1886 #   error "__cpp_lib_span should not be defined before c++20"
1887 # endif
1888 
1889 # ifdef __cpp_lib_span_at
1890 #   error "__cpp_lib_span_at should not be defined before c++26"
1891 # endif
1892 
1893 # ifdef __cpp_lib_span_initializer_list
1894 #   error "__cpp_lib_span_initializer_list should not be defined before c++26"
1895 # endif
1896 
1897 # ifdef __cpp_lib_spanstream
1898 #   error "__cpp_lib_spanstream should not be defined before c++23"
1899 # endif
1900 
1901 # ifdef __cpp_lib_ssize
1902 #   error "__cpp_lib_ssize should not be defined before c++20"
1903 # endif
1904 
1905 # ifdef __cpp_lib_sstream_from_string_view
1906 #   error "__cpp_lib_sstream_from_string_view should not be defined before c++26"
1907 # endif
1908 
1909 # ifdef __cpp_lib_stacktrace
1910 #   error "__cpp_lib_stacktrace should not be defined before c++23"
1911 # endif
1912 
1913 # ifdef __cpp_lib_starts_ends_with
1914 #   error "__cpp_lib_starts_ends_with should not be defined before c++20"
1915 # endif
1916 
1917 # ifdef __cpp_lib_stdatomic_h
1918 #   error "__cpp_lib_stdatomic_h should not be defined before c++23"
1919 # endif
1920 
1921 # ifdef __cpp_lib_string_contains
1922 #   error "__cpp_lib_string_contains should not be defined before c++23"
1923 # endif
1924 
1925 # ifdef __cpp_lib_string_resize_and_overwrite
1926 #   error "__cpp_lib_string_resize_and_overwrite should not be defined before c++23"
1927 # endif
1928 
1929 # ifndef __cpp_lib_string_udls
1930 #   error "__cpp_lib_string_udls should be defined in c++14"
1931 # endif
1932 # if __cpp_lib_string_udls != 201304L
1933 #   error "__cpp_lib_string_udls should have the value 201304L in c++14"
1934 # endif
1935 
1936 # ifdef __cpp_lib_string_view
1937 #   error "__cpp_lib_string_view should not be defined before c++17"
1938 # endif
1939 
1940 # ifdef __cpp_lib_submdspan
1941 #   error "__cpp_lib_submdspan should not be defined before c++26"
1942 # endif
1943 
1944 # ifdef __cpp_lib_syncbuf
1945 #   error "__cpp_lib_syncbuf should not be defined before c++20"
1946 # endif
1947 
1948 # ifdef __cpp_lib_text_encoding
1949 #   error "__cpp_lib_text_encoding should not be defined before c++26"
1950 # endif
1951 
1952 # ifdef __cpp_lib_three_way_comparison
1953 #   error "__cpp_lib_three_way_comparison should not be defined before c++20"
1954 # endif
1955 
1956 # ifdef __cpp_lib_to_address
1957 #   error "__cpp_lib_to_address should not be defined before c++20"
1958 # endif
1959 
1960 # ifdef __cpp_lib_to_array
1961 #   error "__cpp_lib_to_array should not be defined before c++20"
1962 # endif
1963 
1964 # ifdef __cpp_lib_to_chars
1965 #   error "__cpp_lib_to_chars should not be defined before c++17"
1966 # endif
1967 
1968 # ifdef __cpp_lib_to_string
1969 #   error "__cpp_lib_to_string should not be defined before c++26"
1970 # endif
1971 
1972 # ifdef __cpp_lib_to_underlying
1973 #   error "__cpp_lib_to_underlying should not be defined before c++23"
1974 # endif
1975 
1976 # ifndef __cpp_lib_transformation_trait_aliases
1977 #   error "__cpp_lib_transformation_trait_aliases should be defined in c++14"
1978 # endif
1979 # if __cpp_lib_transformation_trait_aliases != 201304L
1980 #   error "__cpp_lib_transformation_trait_aliases should have the value 201304L in c++14"
1981 # endif
1982 
1983 # ifndef __cpp_lib_transparent_operators
1984 #   error "__cpp_lib_transparent_operators should be defined in c++14"
1985 # endif
1986 # if __cpp_lib_transparent_operators != 201210L
1987 #   error "__cpp_lib_transparent_operators should have the value 201210L in c++14"
1988 # endif
1989 
1990 # ifndef __cpp_lib_tuple_element_t
1991 #   error "__cpp_lib_tuple_element_t should be defined in c++14"
1992 # endif
1993 # if __cpp_lib_tuple_element_t != 201402L
1994 #   error "__cpp_lib_tuple_element_t should have the value 201402L in c++14"
1995 # endif
1996 
1997 # ifdef __cpp_lib_tuple_like
1998 #   error "__cpp_lib_tuple_like should not be defined before c++23"
1999 # endif
2000 
2001 # ifndef __cpp_lib_tuples_by_type
2002 #   error "__cpp_lib_tuples_by_type should be defined in c++14"
2003 # endif
2004 # if __cpp_lib_tuples_by_type != 201304L
2005 #   error "__cpp_lib_tuples_by_type should have the value 201304L in c++14"
2006 # endif
2007 
2008 # ifdef __cpp_lib_type_identity
2009 #   error "__cpp_lib_type_identity should not be defined before c++20"
2010 # endif
2011 
2012 # ifdef __cpp_lib_type_trait_variable_templates
2013 #   error "__cpp_lib_type_trait_variable_templates should not be defined before c++17"
2014 # endif
2015 
2016 # ifdef __cpp_lib_uncaught_exceptions
2017 #   error "__cpp_lib_uncaught_exceptions should not be defined before c++17"
2018 # endif
2019 
2020 # ifdef __cpp_lib_unordered_map_try_emplace
2021 #   error "__cpp_lib_unordered_map_try_emplace should not be defined before c++17"
2022 # endif
2023 
2024 # ifdef __cpp_lib_unreachable
2025 #   error "__cpp_lib_unreachable should not be defined before c++23"
2026 # endif
2027 
2028 # ifdef __cpp_lib_unwrap_ref
2029 #   error "__cpp_lib_unwrap_ref should not be defined before c++20"
2030 # endif
2031 
2032 # ifdef __cpp_lib_variant
2033 #   error "__cpp_lib_variant should not be defined before c++17"
2034 # endif
2035 
2036 # ifdef __cpp_lib_void_t
2037 #   error "__cpp_lib_void_t should not be defined before c++17"
2038 # endif
2039 
2040 #elif TEST_STD_VER == 17
2041 
2042 # ifdef __cpp_lib_adaptor_iterator_pair_constructor
2043 #   error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++23"
2044 # endif
2045 
2046 # ifndef __cpp_lib_addressof_constexpr
2047 #   error "__cpp_lib_addressof_constexpr should be defined in c++17"
2048 # endif
2049 # if __cpp_lib_addressof_constexpr != 201603L
2050 #   error "__cpp_lib_addressof_constexpr should have the value 201603L in c++17"
2051 # endif
2052 
2053 # ifdef __cpp_lib_allocate_at_least
2054 #   error "__cpp_lib_allocate_at_least should not be defined before c++23"
2055 # endif
2056 
2057 # ifndef __cpp_lib_allocator_traits_is_always_equal
2058 #   error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++17"
2059 # endif
2060 # if __cpp_lib_allocator_traits_is_always_equal != 201411L
2061 #   error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++17"
2062 # endif
2063 
2064 # ifndef __cpp_lib_any
2065 #   error "__cpp_lib_any should be defined in c++17"
2066 # endif
2067 # if __cpp_lib_any != 201606L
2068 #   error "__cpp_lib_any should have the value 201606L in c++17"
2069 # endif
2070 
2071 # ifndef __cpp_lib_apply
2072 #   error "__cpp_lib_apply should be defined in c++17"
2073 # endif
2074 # if __cpp_lib_apply != 201603L
2075 #   error "__cpp_lib_apply should have the value 201603L in c++17"
2076 # endif
2077 
2078 # ifndef __cpp_lib_array_constexpr
2079 #   error "__cpp_lib_array_constexpr should be defined in c++17"
2080 # endif
2081 # if __cpp_lib_array_constexpr != 201603L
2082 #   error "__cpp_lib_array_constexpr should have the value 201603L in c++17"
2083 # endif
2084 
2085 # ifndef __cpp_lib_as_const
2086 #   error "__cpp_lib_as_const should be defined in c++17"
2087 # endif
2088 # if __cpp_lib_as_const != 201510L
2089 #   error "__cpp_lib_as_const should have the value 201510L in c++17"
2090 # endif
2091 
2092 # ifdef __cpp_lib_associative_heterogeneous_erasure
2093 #   error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
2094 # endif
2095 
2096 # ifdef __cpp_lib_associative_heterogeneous_insertion
2097 #   error "__cpp_lib_associative_heterogeneous_insertion should not be defined before c++26"
2098 # endif
2099 
2100 # ifdef __cpp_lib_assume_aligned
2101 #   error "__cpp_lib_assume_aligned should not be defined before c++20"
2102 # endif
2103 
2104 # ifdef __cpp_lib_atomic_flag_test
2105 #   error "__cpp_lib_atomic_flag_test should not be defined before c++20"
2106 # endif
2107 
2108 # ifdef __cpp_lib_atomic_float
2109 #   error "__cpp_lib_atomic_float should not be defined before c++20"
2110 # endif
2111 
2112 # ifndef __cpp_lib_atomic_is_always_lock_free
2113 #   error "__cpp_lib_atomic_is_always_lock_free should be defined in c++17"
2114 # endif
2115 # if __cpp_lib_atomic_is_always_lock_free != 201603L
2116 #   error "__cpp_lib_atomic_is_always_lock_free should have the value 201603L in c++17"
2117 # endif
2118 
2119 # ifdef __cpp_lib_atomic_lock_free_type_aliases
2120 #   error "__cpp_lib_atomic_lock_free_type_aliases should not be defined before c++20"
2121 # endif
2122 
2123 # ifdef __cpp_lib_atomic_min_max
2124 #   error "__cpp_lib_atomic_min_max should not be defined before c++26"
2125 # endif
2126 
2127 # ifdef __cpp_lib_atomic_ref
2128 #   error "__cpp_lib_atomic_ref should not be defined before c++20"
2129 # endif
2130 
2131 # ifdef __cpp_lib_atomic_shared_ptr
2132 #   error "__cpp_lib_atomic_shared_ptr should not be defined before c++20"
2133 # endif
2134 
2135 # ifdef __cpp_lib_atomic_value_initialization
2136 #   error "__cpp_lib_atomic_value_initialization should not be defined before c++20"
2137 # endif
2138 
2139 # ifdef __cpp_lib_atomic_wait
2140 #   error "__cpp_lib_atomic_wait should not be defined before c++20"
2141 # endif
2142 
2143 # ifdef __cpp_lib_barrier
2144 #   error "__cpp_lib_barrier should not be defined before c++20"
2145 # endif
2146 
2147 # ifdef __cpp_lib_bind_back
2148 #   error "__cpp_lib_bind_back should not be defined before c++23"
2149 # endif
2150 
2151 # ifdef __cpp_lib_bind_front
2152 #   error "__cpp_lib_bind_front should not be defined before c++20"
2153 # endif
2154 
2155 # ifdef __cpp_lib_bit_cast
2156 #   error "__cpp_lib_bit_cast should not be defined before c++20"
2157 # endif
2158 
2159 # ifdef __cpp_lib_bitops
2160 #   error "__cpp_lib_bitops should not be defined before c++20"
2161 # endif
2162 
2163 # ifdef __cpp_lib_bitset
2164 #   error "__cpp_lib_bitset should not be defined before c++26"
2165 # endif
2166 
2167 # ifndef __cpp_lib_bool_constant
2168 #   error "__cpp_lib_bool_constant should be defined in c++17"
2169 # endif
2170 # if __cpp_lib_bool_constant != 201505L
2171 #   error "__cpp_lib_bool_constant should have the value 201505L in c++17"
2172 # endif
2173 
2174 # ifdef __cpp_lib_bounded_array_traits
2175 #   error "__cpp_lib_bounded_array_traits should not be defined before c++20"
2176 # endif
2177 
2178 # ifndef __cpp_lib_boyer_moore_searcher
2179 #   error "__cpp_lib_boyer_moore_searcher should be defined in c++17"
2180 # endif
2181 # if __cpp_lib_boyer_moore_searcher != 201603L
2182 #   error "__cpp_lib_boyer_moore_searcher should have the value 201603L in c++17"
2183 # endif
2184 
2185 # ifndef __cpp_lib_byte
2186 #   error "__cpp_lib_byte should be defined in c++17"
2187 # endif
2188 # if __cpp_lib_byte != 201603L
2189 #   error "__cpp_lib_byte should have the value 201603L in c++17"
2190 # endif
2191 
2192 # ifdef __cpp_lib_byteswap
2193 #   error "__cpp_lib_byteswap should not be defined before c++23"
2194 # endif
2195 
2196 # ifdef __cpp_lib_char8_t
2197 #   error "__cpp_lib_char8_t should not be defined before c++20"
2198 # endif
2199 
2200 # ifndef __cpp_lib_chrono
2201 #   error "__cpp_lib_chrono should be defined in c++17"
2202 # endif
2203 # if __cpp_lib_chrono != 201611L
2204 #   error "__cpp_lib_chrono should have the value 201611L in c++17"
2205 # endif
2206 
2207 # ifndef __cpp_lib_chrono_udls
2208 #   error "__cpp_lib_chrono_udls should be defined in c++17"
2209 # endif
2210 # if __cpp_lib_chrono_udls != 201304L
2211 #   error "__cpp_lib_chrono_udls should have the value 201304L in c++17"
2212 # endif
2213 
2214 # ifndef __cpp_lib_clamp
2215 #   error "__cpp_lib_clamp should be defined in c++17"
2216 # endif
2217 # if __cpp_lib_clamp != 201603L
2218 #   error "__cpp_lib_clamp should have the value 201603L in c++17"
2219 # endif
2220 
2221 # ifndef __cpp_lib_complex_udls
2222 #   error "__cpp_lib_complex_udls should be defined in c++17"
2223 # endif
2224 # if __cpp_lib_complex_udls != 201309L
2225 #   error "__cpp_lib_complex_udls should have the value 201309L in c++17"
2226 # endif
2227 
2228 # ifdef __cpp_lib_concepts
2229 #   error "__cpp_lib_concepts should not be defined before c++20"
2230 # endif
2231 
2232 # ifdef __cpp_lib_constexpr_algorithms
2233 #   error "__cpp_lib_constexpr_algorithms should not be defined before c++20"
2234 # endif
2235 
2236 # ifdef __cpp_lib_constexpr_bitset
2237 #   error "__cpp_lib_constexpr_bitset should not be defined before c++23"
2238 # endif
2239 
2240 # ifdef __cpp_lib_constexpr_charconv
2241 #   error "__cpp_lib_constexpr_charconv should not be defined before c++23"
2242 # endif
2243 
2244 # ifdef __cpp_lib_constexpr_cmath
2245 #   error "__cpp_lib_constexpr_cmath should not be defined before c++23"
2246 # endif
2247 
2248 # ifdef __cpp_lib_constexpr_complex
2249 #   error "__cpp_lib_constexpr_complex should not be defined before c++20"
2250 # endif
2251 
2252 # ifdef __cpp_lib_constexpr_dynamic_alloc
2253 #   error "__cpp_lib_constexpr_dynamic_alloc should not be defined before c++20"
2254 # endif
2255 
2256 # ifdef __cpp_lib_constexpr_functional
2257 #   error "__cpp_lib_constexpr_functional should not be defined before c++20"
2258 # endif
2259 
2260 # ifdef __cpp_lib_constexpr_iterator
2261 #   error "__cpp_lib_constexpr_iterator should not be defined before c++20"
2262 # endif
2263 
2264 # ifdef __cpp_lib_constexpr_memory
2265 #   error "__cpp_lib_constexpr_memory should not be defined before c++20"
2266 # endif
2267 
2268 # ifdef __cpp_lib_constexpr_new
2269 #   error "__cpp_lib_constexpr_new should not be defined before c++26"
2270 # endif
2271 
2272 # ifdef __cpp_lib_constexpr_numeric
2273 #   error "__cpp_lib_constexpr_numeric should not be defined before c++20"
2274 # endif
2275 
2276 # ifdef __cpp_lib_constexpr_string
2277 #   error "__cpp_lib_constexpr_string should not be defined before c++20"
2278 # endif
2279 
2280 # ifdef __cpp_lib_constexpr_string_view
2281 #   error "__cpp_lib_constexpr_string_view should not be defined before c++20"
2282 # endif
2283 
2284 # ifdef __cpp_lib_constexpr_tuple
2285 #   error "__cpp_lib_constexpr_tuple should not be defined before c++20"
2286 # endif
2287 
2288 # ifdef __cpp_lib_constexpr_typeinfo
2289 #   error "__cpp_lib_constexpr_typeinfo should not be defined before c++23"
2290 # endif
2291 
2292 # ifdef __cpp_lib_constexpr_utility
2293 #   error "__cpp_lib_constexpr_utility should not be defined before c++20"
2294 # endif
2295 
2296 # ifdef __cpp_lib_constexpr_vector
2297 #   error "__cpp_lib_constexpr_vector should not be defined before c++20"
2298 # endif
2299 
2300 # ifdef __cpp_lib_constrained_equality
2301 #   error "__cpp_lib_constrained_equality should not be defined before c++26"
2302 # endif
2303 
2304 # ifdef __cpp_lib_containers_ranges
2305 #   error "__cpp_lib_containers_ranges should not be defined before c++23"
2306 # endif
2307 
2308 # ifdef __cpp_lib_copyable_function
2309 #   error "__cpp_lib_copyable_function should not be defined before c++26"
2310 # endif
2311 
2312 # ifdef __cpp_lib_coroutine
2313 #   error "__cpp_lib_coroutine should not be defined before c++20"
2314 # endif
2315 
2316 # ifdef __cpp_lib_debugging
2317 #   error "__cpp_lib_debugging should not be defined before c++26"
2318 # endif
2319 
2320 # ifdef __cpp_lib_default_template_type_for_algorithm_values
2321 #   error "__cpp_lib_default_template_type_for_algorithm_values should not be defined before c++26"
2322 # endif
2323 
2324 # ifdef __cpp_lib_destroying_delete
2325 #   error "__cpp_lib_destroying_delete should not be defined before c++20"
2326 # endif
2327 
2328 # ifndef __cpp_lib_enable_shared_from_this
2329 #   error "__cpp_lib_enable_shared_from_this should be defined in c++17"
2330 # endif
2331 # if __cpp_lib_enable_shared_from_this != 201603L
2332 #   error "__cpp_lib_enable_shared_from_this should have the value 201603L in c++17"
2333 # endif
2334 
2335 # ifdef __cpp_lib_endian
2336 #   error "__cpp_lib_endian should not be defined before c++20"
2337 # endif
2338 
2339 # ifdef __cpp_lib_erase_if
2340 #   error "__cpp_lib_erase_if should not be defined before c++20"
2341 # endif
2342 
2343 # ifndef __cpp_lib_exchange_function
2344 #   error "__cpp_lib_exchange_function should be defined in c++17"
2345 # endif
2346 # if __cpp_lib_exchange_function != 201304L
2347 #   error "__cpp_lib_exchange_function should have the value 201304L in c++17"
2348 # endif
2349 
2350 # if !defined(_LIBCPP_VERSION)
2351 #   ifndef __cpp_lib_execution
2352 #     error "__cpp_lib_execution should be defined in c++17"
2353 #   endif
2354 #   if __cpp_lib_execution != 201603L
2355 #     error "__cpp_lib_execution should have the value 201603L in c++17"
2356 #   endif
2357 # else // _LIBCPP_VERSION
2358 #   ifdef __cpp_lib_execution
2359 #     error "__cpp_lib_execution should not be defined because it is unimplemented in libc++!"
2360 #   endif
2361 # endif
2362 
2363 # ifdef __cpp_lib_expected
2364 #   error "__cpp_lib_expected should not be defined before c++23"
2365 # endif
2366 
2367 # if !defined(_LIBCPP_VERSION) || (!defined(_LIBCPP_HAS_NO_FILESYSTEM) && _LIBCPP_AVAILABILITY_HAS_FILESYSTEM_LIBRARY)
2368 #   ifndef __cpp_lib_filesystem
2369 #     error "__cpp_lib_filesystem should be defined in c++17"
2370 #   endif
2371 #   if __cpp_lib_filesystem != 201703L
2372 #     error "__cpp_lib_filesystem should have the value 201703L in c++17"
2373 #   endif
2374 # else
2375 #   ifdef __cpp_lib_filesystem
2376 #     error "__cpp_lib_filesystem should not be defined when the requirement '!defined(_LIBCPP_VERSION) || (!defined(_LIBCPP_HAS_NO_FILESYSTEM) && _LIBCPP_AVAILABILITY_HAS_FILESYSTEM_LIBRARY)' is not met!"
2377 #   endif
2378 # endif
2379 
2380 # ifdef __cpp_lib_format
2381 #   error "__cpp_lib_format should not be defined before c++20"
2382 # endif
2383 
2384 # ifdef __cpp_lib_format_path
2385 #   error "__cpp_lib_format_path should not be defined before c++26"
2386 # endif
2387 
2388 # ifdef __cpp_lib_format_ranges
2389 #   error "__cpp_lib_format_ranges should not be defined before c++23"
2390 # endif
2391 
2392 # ifdef __cpp_lib_format_uchar
2393 #   error "__cpp_lib_format_uchar should not be defined before c++20"
2394 # endif
2395 
2396 # ifdef __cpp_lib_formatters
2397 #   error "__cpp_lib_formatters should not be defined before c++23"
2398 # endif
2399 
2400 # ifdef __cpp_lib_forward_like
2401 #   error "__cpp_lib_forward_like should not be defined before c++23"
2402 # endif
2403 
2404 # ifdef __cpp_lib_freestanding_algorithm
2405 #   error "__cpp_lib_freestanding_algorithm should not be defined before c++26"
2406 # endif
2407 
2408 # ifdef __cpp_lib_freestanding_array
2409 #   error "__cpp_lib_freestanding_array should not be defined before c++26"
2410 # endif
2411 
2412 # ifdef __cpp_lib_freestanding_cstring
2413 #   error "__cpp_lib_freestanding_cstring should not be defined before c++26"
2414 # endif
2415 
2416 # ifdef __cpp_lib_freestanding_expected
2417 #   error "__cpp_lib_freestanding_expected should not be defined before c++26"
2418 # endif
2419 
2420 # ifdef __cpp_lib_freestanding_mdspan
2421 #   error "__cpp_lib_freestanding_mdspan should not be defined before c++26"
2422 # endif
2423 
2424 # ifdef __cpp_lib_freestanding_optional
2425 #   error "__cpp_lib_freestanding_optional should not be defined before c++26"
2426 # endif
2427 
2428 # ifdef __cpp_lib_freestanding_string_view
2429 #   error "__cpp_lib_freestanding_string_view should not be defined before c++26"
2430 # endif
2431 
2432 # ifdef __cpp_lib_freestanding_variant
2433 #   error "__cpp_lib_freestanding_variant should not be defined before c++26"
2434 # endif
2435 
2436 # ifdef __cpp_lib_fstream_native_handle
2437 #   error "__cpp_lib_fstream_native_handle should not be defined before c++26"
2438 # endif
2439 
2440 # ifdef __cpp_lib_function_ref
2441 #   error "__cpp_lib_function_ref should not be defined before c++26"
2442 # endif
2443 
2444 # ifndef __cpp_lib_gcd_lcm
2445 #   error "__cpp_lib_gcd_lcm should be defined in c++17"
2446 # endif
2447 # if __cpp_lib_gcd_lcm != 201606L
2448 #   error "__cpp_lib_gcd_lcm should have the value 201606L in c++17"
2449 # endif
2450 
2451 # ifdef __cpp_lib_generate_random
2452 #   error "__cpp_lib_generate_random should not be defined before c++26"
2453 # endif
2454 
2455 # ifndef __cpp_lib_generic_associative_lookup
2456 #   error "__cpp_lib_generic_associative_lookup should be defined in c++17"
2457 # endif
2458 # if __cpp_lib_generic_associative_lookup != 201304L
2459 #   error "__cpp_lib_generic_associative_lookup should have the value 201304L in c++17"
2460 # endif
2461 
2462 # ifdef __cpp_lib_generic_unordered_lookup
2463 #   error "__cpp_lib_generic_unordered_lookup should not be defined before c++20"
2464 # endif
2465 
2466 # if !defined(_LIBCPP_VERSION) || (defined(__GCC_DESTRUCTIVE_SIZE) && defined(__GCC_CONSTRUCTIVE_SIZE))
2467 #   ifndef __cpp_lib_hardware_interference_size
2468 #     error "__cpp_lib_hardware_interference_size should be defined in c++17"
2469 #   endif
2470 #   if __cpp_lib_hardware_interference_size != 201703L
2471 #     error "__cpp_lib_hardware_interference_size should have the value 201703L in c++17"
2472 #   endif
2473 # else
2474 #   ifdef __cpp_lib_hardware_interference_size
2475 #     error "__cpp_lib_hardware_interference_size should not be defined when the requirement '!defined(_LIBCPP_VERSION) || (defined(__GCC_DESTRUCTIVE_SIZE) && defined(__GCC_CONSTRUCTIVE_SIZE))' is not met!"
2476 #   endif
2477 # endif
2478 
2479 # ifndef __cpp_lib_has_unique_object_representations
2480 #   error "__cpp_lib_has_unique_object_representations should be defined in c++17"
2481 # endif
2482 # if __cpp_lib_has_unique_object_representations != 201606L
2483 #   error "__cpp_lib_has_unique_object_representations should have the value 201606L in c++17"
2484 # endif
2485 
2486 # ifdef __cpp_lib_hazard_pointer
2487 #   error "__cpp_lib_hazard_pointer should not be defined before c++26"
2488 # endif
2489 
2490 # ifndef __cpp_lib_hypot
2491 #   error "__cpp_lib_hypot should be defined in c++17"
2492 # endif
2493 # if __cpp_lib_hypot != 201603L
2494 #   error "__cpp_lib_hypot should have the value 201603L in c++17"
2495 # endif
2496 
2497 # ifndef __cpp_lib_incomplete_container_elements
2498 #   error "__cpp_lib_incomplete_container_elements should be defined in c++17"
2499 # endif
2500 # if __cpp_lib_incomplete_container_elements != 201505L
2501 #   error "__cpp_lib_incomplete_container_elements should have the value 201505L in c++17"
2502 # endif
2503 
2504 # ifdef __cpp_lib_inplace_vector
2505 #   error "__cpp_lib_inplace_vector should not be defined before c++26"
2506 # endif
2507 
2508 # ifdef __cpp_lib_int_pow2
2509 #   error "__cpp_lib_int_pow2 should not be defined before c++20"
2510 # endif
2511 
2512 # ifdef __cpp_lib_integer_comparison_functions
2513 #   error "__cpp_lib_integer_comparison_functions should not be defined before c++20"
2514 # endif
2515 
2516 # ifndef __cpp_lib_integer_sequence
2517 #   error "__cpp_lib_integer_sequence should be defined in c++17"
2518 # endif
2519 # if __cpp_lib_integer_sequence != 201304L
2520 #   error "__cpp_lib_integer_sequence should have the value 201304L in c++17"
2521 # endif
2522 
2523 # ifndef __cpp_lib_integral_constant_callable
2524 #   error "__cpp_lib_integral_constant_callable should be defined in c++17"
2525 # endif
2526 # if __cpp_lib_integral_constant_callable != 201304L
2527 #   error "__cpp_lib_integral_constant_callable should have the value 201304L in c++17"
2528 # endif
2529 
2530 # ifdef __cpp_lib_interpolate
2531 #   error "__cpp_lib_interpolate should not be defined before c++20"
2532 # endif
2533 
2534 # ifndef __cpp_lib_invoke
2535 #   error "__cpp_lib_invoke should be defined in c++17"
2536 # endif
2537 # if __cpp_lib_invoke != 201411L
2538 #   error "__cpp_lib_invoke should have the value 201411L in c++17"
2539 # endif
2540 
2541 # ifdef __cpp_lib_invoke_r
2542 #   error "__cpp_lib_invoke_r should not be defined before c++23"
2543 # endif
2544 
2545 # ifdef __cpp_lib_ios_noreplace
2546 #   error "__cpp_lib_ios_noreplace should not be defined before c++23"
2547 # endif
2548 
2549 # ifndef __cpp_lib_is_aggregate
2550 #   error "__cpp_lib_is_aggregate should be defined in c++17"
2551 # endif
2552 # if __cpp_lib_is_aggregate != 201703L
2553 #   error "__cpp_lib_is_aggregate should have the value 201703L in c++17"
2554 # endif
2555 
2556 # ifdef __cpp_lib_is_constant_evaluated
2557 #   error "__cpp_lib_is_constant_evaluated should not be defined before c++20"
2558 # endif
2559 
2560 # ifndef __cpp_lib_is_final
2561 #   error "__cpp_lib_is_final should be defined in c++17"
2562 # endif
2563 # if __cpp_lib_is_final != 201402L
2564 #   error "__cpp_lib_is_final should have the value 201402L in c++17"
2565 # endif
2566 
2567 # ifndef __cpp_lib_is_invocable
2568 #   error "__cpp_lib_is_invocable should be defined in c++17"
2569 # endif
2570 # if __cpp_lib_is_invocable != 201703L
2571 #   error "__cpp_lib_is_invocable should have the value 201703L in c++17"
2572 # endif
2573 
2574 # ifdef __cpp_lib_is_layout_compatible
2575 #   error "__cpp_lib_is_layout_compatible should not be defined before c++20"
2576 # endif
2577 
2578 # ifdef __cpp_lib_is_nothrow_convertible
2579 #   error "__cpp_lib_is_nothrow_convertible should not be defined before c++20"
2580 # endif
2581 
2582 # ifndef __cpp_lib_is_null_pointer
2583 #   error "__cpp_lib_is_null_pointer should be defined in c++17"
2584 # endif
2585 # if __cpp_lib_is_null_pointer != 201309L
2586 #   error "__cpp_lib_is_null_pointer should have the value 201309L in c++17"
2587 # endif
2588 
2589 # ifdef __cpp_lib_is_pointer_interconvertible
2590 #   error "__cpp_lib_is_pointer_interconvertible should not be defined before c++20"
2591 # endif
2592 
2593 # ifdef __cpp_lib_is_scoped_enum
2594 #   error "__cpp_lib_is_scoped_enum should not be defined before c++23"
2595 # endif
2596 
2597 # ifndef __cpp_lib_is_swappable
2598 #   error "__cpp_lib_is_swappable should be defined in c++17"
2599 # endif
2600 # if __cpp_lib_is_swappable != 201603L
2601 #   error "__cpp_lib_is_swappable should have the value 201603L in c++17"
2602 # endif
2603 
2604 # ifdef __cpp_lib_is_virtual_base_of
2605 #   error "__cpp_lib_is_virtual_base_of should not be defined before c++26"
2606 # endif
2607 
2608 # ifdef __cpp_lib_is_within_lifetime
2609 #   error "__cpp_lib_is_within_lifetime should not be defined before c++26"
2610 # endif
2611 
2612 # ifdef __cpp_lib_jthread
2613 #   error "__cpp_lib_jthread should not be defined before c++20"
2614 # endif
2615 
2616 # ifdef __cpp_lib_latch
2617 #   error "__cpp_lib_latch should not be defined before c++20"
2618 # endif
2619 
2620 # ifndef __cpp_lib_launder
2621 #   error "__cpp_lib_launder should be defined in c++17"
2622 # endif
2623 # if __cpp_lib_launder != 201606L
2624 #   error "__cpp_lib_launder should have the value 201606L in c++17"
2625 # endif
2626 
2627 # ifdef __cpp_lib_linalg
2628 #   error "__cpp_lib_linalg should not be defined before c++26"
2629 # endif
2630 
2631 # ifdef __cpp_lib_list_remove_return_type
2632 #   error "__cpp_lib_list_remove_return_type should not be defined before c++20"
2633 # endif
2634 
2635 # ifndef __cpp_lib_logical_traits
2636 #   error "__cpp_lib_logical_traits should be defined in c++17"
2637 # endif
2638 # if __cpp_lib_logical_traits != 201510L
2639 #   error "__cpp_lib_logical_traits should have the value 201510L in c++17"
2640 # endif
2641 
2642 # ifndef __cpp_lib_make_from_tuple
2643 #   error "__cpp_lib_make_from_tuple should be defined in c++17"
2644 # endif
2645 # if __cpp_lib_make_from_tuple != 201606L
2646 #   error "__cpp_lib_make_from_tuple should have the value 201606L in c++17"
2647 # endif
2648 
2649 # ifndef __cpp_lib_make_reverse_iterator
2650 #   error "__cpp_lib_make_reverse_iterator should be defined in c++17"
2651 # endif
2652 # if __cpp_lib_make_reverse_iterator != 201402L
2653 #   error "__cpp_lib_make_reverse_iterator should have the value 201402L in c++17"
2654 # endif
2655 
2656 # ifndef __cpp_lib_make_unique
2657 #   error "__cpp_lib_make_unique should be defined in c++17"
2658 # endif
2659 # if __cpp_lib_make_unique != 201304L
2660 #   error "__cpp_lib_make_unique should have the value 201304L in c++17"
2661 # endif
2662 
2663 # ifndef __cpp_lib_map_try_emplace
2664 #   error "__cpp_lib_map_try_emplace should be defined in c++17"
2665 # endif
2666 # if __cpp_lib_map_try_emplace != 201411L
2667 #   error "__cpp_lib_map_try_emplace should have the value 201411L in c++17"
2668 # endif
2669 
2670 # ifdef __cpp_lib_math_constants
2671 #   error "__cpp_lib_math_constants should not be defined before c++20"
2672 # endif
2673 
2674 # if !defined(_LIBCPP_VERSION)
2675 #   ifndef __cpp_lib_math_special_functions
2676 #     error "__cpp_lib_math_special_functions should be defined in c++17"
2677 #   endif
2678 #   if __cpp_lib_math_special_functions != 201603L
2679 #     error "__cpp_lib_math_special_functions should have the value 201603L in c++17"
2680 #   endif
2681 # else // _LIBCPP_VERSION
2682 #   ifdef __cpp_lib_math_special_functions
2683 #     error "__cpp_lib_math_special_functions should not be defined because it is unimplemented in libc++!"
2684 #   endif
2685 # endif
2686 
2687 # ifdef __cpp_lib_mdspan
2688 #   error "__cpp_lib_mdspan should not be defined before c++23"
2689 # endif
2690 
2691 # if !defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_PMR
2692 #   ifndef __cpp_lib_memory_resource
2693 #     error "__cpp_lib_memory_resource should be defined in c++17"
2694 #   endif
2695 #   if __cpp_lib_memory_resource != 201603L
2696 #     error "__cpp_lib_memory_resource should have the value 201603L in c++17"
2697 #   endif
2698 # else
2699 #   ifdef __cpp_lib_memory_resource
2700 #     error "__cpp_lib_memory_resource should not be defined when the requirement '!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_PMR' is not met!"
2701 #   endif
2702 # endif
2703 
2704 # ifdef __cpp_lib_modules
2705 #   error "__cpp_lib_modules should not be defined before c++23"
2706 # endif
2707 
2708 # ifdef __cpp_lib_move_iterator_concept
2709 #   error "__cpp_lib_move_iterator_concept should not be defined before c++20"
2710 # endif
2711 
2712 # ifdef __cpp_lib_move_only_function
2713 #   error "__cpp_lib_move_only_function should not be defined before c++23"
2714 # endif
2715 
2716 # ifndef __cpp_lib_node_extract
2717 #   error "__cpp_lib_node_extract should be defined in c++17"
2718 # endif
2719 # if __cpp_lib_node_extract != 201606L
2720 #   error "__cpp_lib_node_extract should have the value 201606L in c++17"
2721 # endif
2722 
2723 # ifndef __cpp_lib_nonmember_container_access
2724 #   error "__cpp_lib_nonmember_container_access should be defined in c++17"
2725 # endif
2726 # if __cpp_lib_nonmember_container_access != 201411L
2727 #   error "__cpp_lib_nonmember_container_access should have the value 201411L in c++17"
2728 # endif
2729 
2730 # ifndef __cpp_lib_not_fn
2731 #   error "__cpp_lib_not_fn should be defined in c++17"
2732 # endif
2733 # if __cpp_lib_not_fn != 201603L
2734 #   error "__cpp_lib_not_fn should have the value 201603L in c++17"
2735 # endif
2736 
2737 # ifndef __cpp_lib_null_iterators
2738 #   error "__cpp_lib_null_iterators should be defined in c++17"
2739 # endif
2740 # if __cpp_lib_null_iterators != 201304L
2741 #   error "__cpp_lib_null_iterators should have the value 201304L in c++17"
2742 # endif
2743 
2744 # ifndef __cpp_lib_optional
2745 #   error "__cpp_lib_optional should be defined in c++17"
2746 # endif
2747 # if __cpp_lib_optional != 201606L
2748 #   error "__cpp_lib_optional should have the value 201606L in c++17"
2749 # endif
2750 
2751 # ifdef __cpp_lib_optional_range_support
2752 #   error "__cpp_lib_optional_range_support should not be defined before c++26"
2753 # endif
2754 
2755 # ifdef __cpp_lib_out_ptr
2756 #   error "__cpp_lib_out_ptr should not be defined before c++23"
2757 # endif
2758 
2759 # if !defined(_LIBCPP_VERSION)
2760 #   ifndef __cpp_lib_parallel_algorithm
2761 #     error "__cpp_lib_parallel_algorithm should be defined in c++17"
2762 #   endif
2763 #   if __cpp_lib_parallel_algorithm != 201603L
2764 #     error "__cpp_lib_parallel_algorithm should have the value 201603L in c++17"
2765 #   endif
2766 # else // _LIBCPP_VERSION
2767 #   ifdef __cpp_lib_parallel_algorithm
2768 #     error "__cpp_lib_parallel_algorithm should not be defined because it is unimplemented in libc++!"
2769 #   endif
2770 # endif
2771 
2772 # ifdef __cpp_lib_philox_engine
2773 #   error "__cpp_lib_philox_engine should not be defined before c++26"
2774 # endif
2775 
2776 # ifdef __cpp_lib_polymorphic_allocator
2777 #   error "__cpp_lib_polymorphic_allocator should not be defined before c++20"
2778 # endif
2779 
2780 # ifdef __cpp_lib_print
2781 #   error "__cpp_lib_print should not be defined before c++23"
2782 # endif
2783 
2784 # if !defined(_LIBCPP_VERSION) || !defined(_LIBCPP_HAS_NO_LOCALIZATION)
2785 #   ifndef __cpp_lib_quoted_string_io
2786 #     error "__cpp_lib_quoted_string_io should be defined in c++17"
2787 #   endif
2788 #   if __cpp_lib_quoted_string_io != 201304L
2789 #     error "__cpp_lib_quoted_string_io should have the value 201304L in c++17"
2790 #   endif
2791 # else
2792 #   ifdef __cpp_lib_quoted_string_io
2793 #     error "__cpp_lib_quoted_string_io should not be defined when the requirement '!defined(_LIBCPP_VERSION) || !defined(_LIBCPP_HAS_NO_LOCALIZATION)' is not met!"
2794 #   endif
2795 # endif
2796 
2797 # ifdef __cpp_lib_ranges
2798 #   error "__cpp_lib_ranges should not be defined before c++20"
2799 # endif
2800 
2801 # ifdef __cpp_lib_ranges_as_const
2802 #   error "__cpp_lib_ranges_as_const should not be defined before c++23"
2803 # endif
2804 
2805 # ifdef __cpp_lib_ranges_as_rvalue
2806 #   error "__cpp_lib_ranges_as_rvalue should not be defined before c++23"
2807 # endif
2808 
2809 # ifdef __cpp_lib_ranges_chunk
2810 #   error "__cpp_lib_ranges_chunk should not be defined before c++23"
2811 # endif
2812 
2813 # ifdef __cpp_lib_ranges_chunk_by
2814 #   error "__cpp_lib_ranges_chunk_by should not be defined before c++23"
2815 # endif
2816 
2817 # ifdef __cpp_lib_ranges_concat
2818 #   error "__cpp_lib_ranges_concat should not be defined before c++26"
2819 # endif
2820 
2821 # ifdef __cpp_lib_ranges_contains
2822 #   error "__cpp_lib_ranges_contains should not be defined before c++23"
2823 # endif
2824 
2825 # ifdef __cpp_lib_ranges_find_last
2826 #   error "__cpp_lib_ranges_find_last should not be defined before c++23"
2827 # endif
2828 
2829 # ifdef __cpp_lib_ranges_iota
2830 #   error "__cpp_lib_ranges_iota should not be defined before c++23"
2831 # endif
2832 
2833 # ifdef __cpp_lib_ranges_join_with
2834 #   error "__cpp_lib_ranges_join_with should not be defined before c++23"
2835 # endif
2836 
2837 # ifdef __cpp_lib_ranges_repeat
2838 #   error "__cpp_lib_ranges_repeat should not be defined before c++23"
2839 # endif
2840 
2841 # ifdef __cpp_lib_ranges_slide
2842 #   error "__cpp_lib_ranges_slide should not be defined before c++23"
2843 # endif
2844 
2845 # ifdef __cpp_lib_ranges_starts_ends_with
2846 #   error "__cpp_lib_ranges_starts_ends_with should not be defined before c++23"
2847 # endif
2848 
2849 # ifdef __cpp_lib_ranges_to_container
2850 #   error "__cpp_lib_ranges_to_container should not be defined before c++23"
2851 # endif
2852 
2853 # ifdef __cpp_lib_ranges_zip
2854 #   error "__cpp_lib_ranges_zip should not be defined before c++23"
2855 # endif
2856 
2857 # ifdef __cpp_lib_ratio
2858 #   error "__cpp_lib_ratio should not be defined before c++26"
2859 # endif
2860 
2861 # ifndef __cpp_lib_raw_memory_algorithms
2862 #   error "__cpp_lib_raw_memory_algorithms should be defined in c++17"
2863 # endif
2864 # if __cpp_lib_raw_memory_algorithms != 201606L
2865 #   error "__cpp_lib_raw_memory_algorithms should have the value 201606L in c++17"
2866 # endif
2867 
2868 # ifdef __cpp_lib_rcu
2869 #   error "__cpp_lib_rcu should not be defined before c++26"
2870 # endif
2871 
2872 # ifdef __cpp_lib_reference_from_temporary
2873 #   error "__cpp_lib_reference_from_temporary should not be defined before c++23"
2874 # endif
2875 
2876 # ifdef __cpp_lib_reference_wrapper
2877 #   error "__cpp_lib_reference_wrapper should not be defined before c++26"
2878 # endif
2879 
2880 # ifdef __cpp_lib_remove_cvref
2881 #   error "__cpp_lib_remove_cvref should not be defined before c++20"
2882 # endif
2883 
2884 # ifndef __cpp_lib_result_of_sfinae
2885 #   error "__cpp_lib_result_of_sfinae should be defined in c++17"
2886 # endif
2887 # if __cpp_lib_result_of_sfinae != 201210L
2888 #   error "__cpp_lib_result_of_sfinae should have the value 201210L in c++17"
2889 # endif
2890 
2891 # ifndef __cpp_lib_robust_nonmodifying_seq_ops
2892 #   error "__cpp_lib_robust_nonmodifying_seq_ops should be defined in c++17"
2893 # endif
2894 # if __cpp_lib_robust_nonmodifying_seq_ops != 201304L
2895 #   error "__cpp_lib_robust_nonmodifying_seq_ops should have the value 201304L in c++17"
2896 # endif
2897 
2898 # ifndef __cpp_lib_sample
2899 #   error "__cpp_lib_sample should be defined in c++17"
2900 # endif
2901 # if __cpp_lib_sample != 201603L
2902 #   error "__cpp_lib_sample should have the value 201603L in c++17"
2903 # endif
2904 
2905 # ifdef __cpp_lib_saturation_arithmetic
2906 #   error "__cpp_lib_saturation_arithmetic should not be defined before c++26"
2907 # endif
2908 
2909 # if !defined(_LIBCPP_HAS_NO_THREADS)
2910 #   ifndef __cpp_lib_scoped_lock
2911 #     error "__cpp_lib_scoped_lock should be defined in c++17"
2912 #   endif
2913 #   if __cpp_lib_scoped_lock != 201703L
2914 #     error "__cpp_lib_scoped_lock should have the value 201703L in c++17"
2915 #   endif
2916 # else
2917 #   ifdef __cpp_lib_scoped_lock
2918 #     error "__cpp_lib_scoped_lock should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS)' is not met!"
2919 #   endif
2920 # endif
2921 
2922 # ifdef __cpp_lib_semaphore
2923 #   error "__cpp_lib_semaphore should not be defined before c++20"
2924 # endif
2925 
2926 # ifdef __cpp_lib_senders
2927 #   error "__cpp_lib_senders should not be defined before c++26"
2928 # endif
2929 
2930 # if !defined(_LIBCPP_HAS_NO_THREADS)
2931 #   ifndef __cpp_lib_shared_mutex
2932 #     error "__cpp_lib_shared_mutex should be defined in c++17"
2933 #   endif
2934 #   if __cpp_lib_shared_mutex != 201505L
2935 #     error "__cpp_lib_shared_mutex should have the value 201505L in c++17"
2936 #   endif
2937 # else
2938 #   ifdef __cpp_lib_shared_mutex
2939 #     error "__cpp_lib_shared_mutex should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS)' is not met!"
2940 #   endif
2941 # endif
2942 
2943 # ifndef __cpp_lib_shared_ptr_arrays
2944 #   error "__cpp_lib_shared_ptr_arrays should be defined in c++17"
2945 # endif
2946 # if __cpp_lib_shared_ptr_arrays != 201611L
2947 #   error "__cpp_lib_shared_ptr_arrays should have the value 201611L in c++17"
2948 # endif
2949 
2950 # ifndef __cpp_lib_shared_ptr_weak_type
2951 #   error "__cpp_lib_shared_ptr_weak_type should be defined in c++17"
2952 # endif
2953 # if __cpp_lib_shared_ptr_weak_type != 201606L
2954 #   error "__cpp_lib_shared_ptr_weak_type should have the value 201606L in c++17"
2955 # endif
2956 
2957 # if !defined(_LIBCPP_HAS_NO_THREADS)
2958 #   ifndef __cpp_lib_shared_timed_mutex
2959 #     error "__cpp_lib_shared_timed_mutex should be defined in c++17"
2960 #   endif
2961 #   if __cpp_lib_shared_timed_mutex != 201402L
2962 #     error "__cpp_lib_shared_timed_mutex should have the value 201402L in c++17"
2963 #   endif
2964 # else
2965 #   ifdef __cpp_lib_shared_timed_mutex
2966 #     error "__cpp_lib_shared_timed_mutex should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS)' is not met!"
2967 #   endif
2968 # endif
2969 
2970 # ifdef __cpp_lib_shift
2971 #   error "__cpp_lib_shift should not be defined before c++20"
2972 # endif
2973 
2974 # ifdef __cpp_lib_smart_ptr_for_overwrite
2975 #   error "__cpp_lib_smart_ptr_for_overwrite should not be defined before c++20"
2976 # endif
2977 
2978 # ifdef __cpp_lib_smart_ptr_owner_equality
2979 #   error "__cpp_lib_smart_ptr_owner_equality should not be defined before c++26"
2980 # endif
2981 
2982 # ifdef __cpp_lib_source_location
2983 #   error "__cpp_lib_source_location should not be defined before c++20"
2984 # endif
2985 
2986 # ifdef __cpp_lib_span
2987 #   error "__cpp_lib_span should not be defined before c++20"
2988 # endif
2989 
2990 # ifdef __cpp_lib_span_at
2991 #   error "__cpp_lib_span_at should not be defined before c++26"
2992 # endif
2993 
2994 # ifdef __cpp_lib_span_initializer_list
2995 #   error "__cpp_lib_span_initializer_list should not be defined before c++26"
2996 # endif
2997 
2998 # ifdef __cpp_lib_spanstream
2999 #   error "__cpp_lib_spanstream should not be defined before c++23"
3000 # endif
3001 
3002 # ifdef __cpp_lib_ssize
3003 #   error "__cpp_lib_ssize should not be defined before c++20"
3004 # endif
3005 
3006 # ifdef __cpp_lib_sstream_from_string_view
3007 #   error "__cpp_lib_sstream_from_string_view should not be defined before c++26"
3008 # endif
3009 
3010 # ifdef __cpp_lib_stacktrace
3011 #   error "__cpp_lib_stacktrace should not be defined before c++23"
3012 # endif
3013 
3014 # ifdef __cpp_lib_starts_ends_with
3015 #   error "__cpp_lib_starts_ends_with should not be defined before c++20"
3016 # endif
3017 
3018 # ifdef __cpp_lib_stdatomic_h
3019 #   error "__cpp_lib_stdatomic_h should not be defined before c++23"
3020 # endif
3021 
3022 # ifdef __cpp_lib_string_contains
3023 #   error "__cpp_lib_string_contains should not be defined before c++23"
3024 # endif
3025 
3026 # ifdef __cpp_lib_string_resize_and_overwrite
3027 #   error "__cpp_lib_string_resize_and_overwrite should not be defined before c++23"
3028 # endif
3029 
3030 # ifndef __cpp_lib_string_udls
3031 #   error "__cpp_lib_string_udls should be defined in c++17"
3032 # endif
3033 # if __cpp_lib_string_udls != 201304L
3034 #   error "__cpp_lib_string_udls should have the value 201304L in c++17"
3035 # endif
3036 
3037 # ifndef __cpp_lib_string_view
3038 #   error "__cpp_lib_string_view should be defined in c++17"
3039 # endif
3040 # if __cpp_lib_string_view != 201606L
3041 #   error "__cpp_lib_string_view should have the value 201606L in c++17"
3042 # endif
3043 
3044 # ifdef __cpp_lib_submdspan
3045 #   error "__cpp_lib_submdspan should not be defined before c++26"
3046 # endif
3047 
3048 # ifdef __cpp_lib_syncbuf
3049 #   error "__cpp_lib_syncbuf should not be defined before c++20"
3050 # endif
3051 
3052 # ifdef __cpp_lib_text_encoding
3053 #   error "__cpp_lib_text_encoding should not be defined before c++26"
3054 # endif
3055 
3056 # ifdef __cpp_lib_three_way_comparison
3057 #   error "__cpp_lib_three_way_comparison should not be defined before c++20"
3058 # endif
3059 
3060 # ifdef __cpp_lib_to_address
3061 #   error "__cpp_lib_to_address should not be defined before c++20"
3062 # endif
3063 
3064 # ifdef __cpp_lib_to_array
3065 #   error "__cpp_lib_to_array should not be defined before c++20"
3066 # endif
3067 
3068 # if !defined(_LIBCPP_VERSION)
3069 #   ifndef __cpp_lib_to_chars
3070 #     error "__cpp_lib_to_chars should be defined in c++17"
3071 #   endif
3072 #   if __cpp_lib_to_chars != 201611L
3073 #     error "__cpp_lib_to_chars should have the value 201611L in c++17"
3074 #   endif
3075 # else // _LIBCPP_VERSION
3076 #   ifdef __cpp_lib_to_chars
3077 #     error "__cpp_lib_to_chars should not be defined because it is unimplemented in libc++!"
3078 #   endif
3079 # endif
3080 
3081 # ifdef __cpp_lib_to_string
3082 #   error "__cpp_lib_to_string should not be defined before c++26"
3083 # endif
3084 
3085 # ifdef __cpp_lib_to_underlying
3086 #   error "__cpp_lib_to_underlying should not be defined before c++23"
3087 # endif
3088 
3089 # ifndef __cpp_lib_transformation_trait_aliases
3090 #   error "__cpp_lib_transformation_trait_aliases should be defined in c++17"
3091 # endif
3092 # if __cpp_lib_transformation_trait_aliases != 201304L
3093 #   error "__cpp_lib_transformation_trait_aliases should have the value 201304L in c++17"
3094 # endif
3095 
3096 # ifndef __cpp_lib_transparent_operators
3097 #   error "__cpp_lib_transparent_operators should be defined in c++17"
3098 # endif
3099 # if __cpp_lib_transparent_operators != 201510L
3100 #   error "__cpp_lib_transparent_operators should have the value 201510L in c++17"
3101 # endif
3102 
3103 # ifndef __cpp_lib_tuple_element_t
3104 #   error "__cpp_lib_tuple_element_t should be defined in c++17"
3105 # endif
3106 # if __cpp_lib_tuple_element_t != 201402L
3107 #   error "__cpp_lib_tuple_element_t should have the value 201402L in c++17"
3108 # endif
3109 
3110 # ifdef __cpp_lib_tuple_like
3111 #   error "__cpp_lib_tuple_like should not be defined before c++23"
3112 # endif
3113 
3114 # ifndef __cpp_lib_tuples_by_type
3115 #   error "__cpp_lib_tuples_by_type should be defined in c++17"
3116 # endif
3117 # if __cpp_lib_tuples_by_type != 201304L
3118 #   error "__cpp_lib_tuples_by_type should have the value 201304L in c++17"
3119 # endif
3120 
3121 # ifdef __cpp_lib_type_identity
3122 #   error "__cpp_lib_type_identity should not be defined before c++20"
3123 # endif
3124 
3125 # ifndef __cpp_lib_type_trait_variable_templates
3126 #   error "__cpp_lib_type_trait_variable_templates should be defined in c++17"
3127 # endif
3128 # if __cpp_lib_type_trait_variable_templates != 201510L
3129 #   error "__cpp_lib_type_trait_variable_templates should have the value 201510L in c++17"
3130 # endif
3131 
3132 # ifndef __cpp_lib_uncaught_exceptions
3133 #   error "__cpp_lib_uncaught_exceptions should be defined in c++17"
3134 # endif
3135 # if __cpp_lib_uncaught_exceptions != 201411L
3136 #   error "__cpp_lib_uncaught_exceptions should have the value 201411L in c++17"
3137 # endif
3138 
3139 # ifndef __cpp_lib_unordered_map_try_emplace
3140 #   error "__cpp_lib_unordered_map_try_emplace should be defined in c++17"
3141 # endif
3142 # if __cpp_lib_unordered_map_try_emplace != 201411L
3143 #   error "__cpp_lib_unordered_map_try_emplace should have the value 201411L in c++17"
3144 # endif
3145 
3146 # ifdef __cpp_lib_unreachable
3147 #   error "__cpp_lib_unreachable should not be defined before c++23"
3148 # endif
3149 
3150 # ifdef __cpp_lib_unwrap_ref
3151 #   error "__cpp_lib_unwrap_ref should not be defined before c++20"
3152 # endif
3153 
3154 # ifndef __cpp_lib_variant
3155 #   error "__cpp_lib_variant should be defined in c++17"
3156 # endif
3157 # if __cpp_lib_variant != 202102L
3158 #   error "__cpp_lib_variant should have the value 202102L in c++17"
3159 # endif
3160 
3161 # ifndef __cpp_lib_void_t
3162 #   error "__cpp_lib_void_t should be defined in c++17"
3163 # endif
3164 # if __cpp_lib_void_t != 201411L
3165 #   error "__cpp_lib_void_t should have the value 201411L in c++17"
3166 # endif
3167 
3168 #elif TEST_STD_VER == 20
3169 
3170 # ifdef __cpp_lib_adaptor_iterator_pair_constructor
3171 #   error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++23"
3172 # endif
3173 
3174 # ifndef __cpp_lib_addressof_constexpr
3175 #   error "__cpp_lib_addressof_constexpr should be defined in c++20"
3176 # endif
3177 # if __cpp_lib_addressof_constexpr != 201603L
3178 #   error "__cpp_lib_addressof_constexpr should have the value 201603L in c++20"
3179 # endif
3180 
3181 # ifdef __cpp_lib_allocate_at_least
3182 #   error "__cpp_lib_allocate_at_least should not be defined before c++23"
3183 # endif
3184 
3185 # ifndef __cpp_lib_allocator_traits_is_always_equal
3186 #   error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++20"
3187 # endif
3188 # if __cpp_lib_allocator_traits_is_always_equal != 201411L
3189 #   error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++20"
3190 # endif
3191 
3192 # ifndef __cpp_lib_any
3193 #   error "__cpp_lib_any should be defined in c++20"
3194 # endif
3195 # if __cpp_lib_any != 201606L
3196 #   error "__cpp_lib_any should have the value 201606L in c++20"
3197 # endif
3198 
3199 # ifndef __cpp_lib_apply
3200 #   error "__cpp_lib_apply should be defined in c++20"
3201 # endif
3202 # if __cpp_lib_apply != 201603L
3203 #   error "__cpp_lib_apply should have the value 201603L in c++20"
3204 # endif
3205 
3206 # ifndef __cpp_lib_array_constexpr
3207 #   error "__cpp_lib_array_constexpr should be defined in c++20"
3208 # endif
3209 # if __cpp_lib_array_constexpr != 201811L
3210 #   error "__cpp_lib_array_constexpr should have the value 201811L in c++20"
3211 # endif
3212 
3213 # ifndef __cpp_lib_as_const
3214 #   error "__cpp_lib_as_const should be defined in c++20"
3215 # endif
3216 # if __cpp_lib_as_const != 201510L
3217 #   error "__cpp_lib_as_const should have the value 201510L in c++20"
3218 # endif
3219 
3220 # ifdef __cpp_lib_associative_heterogeneous_erasure
3221 #   error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
3222 # endif
3223 
3224 # ifdef __cpp_lib_associative_heterogeneous_insertion
3225 #   error "__cpp_lib_associative_heterogeneous_insertion should not be defined before c++26"
3226 # endif
3227 
3228 # ifndef __cpp_lib_assume_aligned
3229 #   error "__cpp_lib_assume_aligned should be defined in c++20"
3230 # endif
3231 # if __cpp_lib_assume_aligned != 201811L
3232 #   error "__cpp_lib_assume_aligned should have the value 201811L in c++20"
3233 # endif
3234 
3235 # ifndef __cpp_lib_atomic_flag_test
3236 #   error "__cpp_lib_atomic_flag_test should be defined in c++20"
3237 # endif
3238 # if __cpp_lib_atomic_flag_test != 201907L
3239 #   error "__cpp_lib_atomic_flag_test should have the value 201907L in c++20"
3240 # endif
3241 
3242 # if !defined(_LIBCPP_VERSION)
3243 #   ifndef __cpp_lib_atomic_float
3244 #     error "__cpp_lib_atomic_float should be defined in c++20"
3245 #   endif
3246 #   if __cpp_lib_atomic_float != 201711L
3247 #     error "__cpp_lib_atomic_float should have the value 201711L in c++20"
3248 #   endif
3249 # else // _LIBCPP_VERSION
3250 #   ifdef __cpp_lib_atomic_float
3251 #     error "__cpp_lib_atomic_float should not be defined because it is unimplemented in libc++!"
3252 #   endif
3253 # endif
3254 
3255 # ifndef __cpp_lib_atomic_is_always_lock_free
3256 #   error "__cpp_lib_atomic_is_always_lock_free should be defined in c++20"
3257 # endif
3258 # if __cpp_lib_atomic_is_always_lock_free != 201603L
3259 #   error "__cpp_lib_atomic_is_always_lock_free should have the value 201603L in c++20"
3260 # endif
3261 
3262 # ifndef __cpp_lib_atomic_lock_free_type_aliases
3263 #   error "__cpp_lib_atomic_lock_free_type_aliases should be defined in c++20"
3264 # endif
3265 # if __cpp_lib_atomic_lock_free_type_aliases != 201907L
3266 #   error "__cpp_lib_atomic_lock_free_type_aliases should have the value 201907L in c++20"
3267 # endif
3268 
3269 # ifdef __cpp_lib_atomic_min_max
3270 #   error "__cpp_lib_atomic_min_max should not be defined before c++26"
3271 # endif
3272 
3273 # ifndef __cpp_lib_atomic_ref
3274 #   error "__cpp_lib_atomic_ref should be defined in c++20"
3275 # endif
3276 # if __cpp_lib_atomic_ref != 201806L
3277 #   error "__cpp_lib_atomic_ref should have the value 201806L in c++20"
3278 # endif
3279 
3280 # if !defined(_LIBCPP_VERSION)
3281 #   ifndef __cpp_lib_atomic_shared_ptr
3282 #     error "__cpp_lib_atomic_shared_ptr should be defined in c++20"
3283 #   endif
3284 #   if __cpp_lib_atomic_shared_ptr != 201711L
3285 #     error "__cpp_lib_atomic_shared_ptr should have the value 201711L in c++20"
3286 #   endif
3287 # else // _LIBCPP_VERSION
3288 #   ifdef __cpp_lib_atomic_shared_ptr
3289 #     error "__cpp_lib_atomic_shared_ptr should not be defined because it is unimplemented in libc++!"
3290 #   endif
3291 # endif
3292 
3293 # ifndef __cpp_lib_atomic_value_initialization
3294 #   error "__cpp_lib_atomic_value_initialization should be defined in c++20"
3295 # endif
3296 # if __cpp_lib_atomic_value_initialization != 201911L
3297 #   error "__cpp_lib_atomic_value_initialization should have the value 201911L in c++20"
3298 # endif
3299 
3300 # if !defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC
3301 #   ifndef __cpp_lib_atomic_wait
3302 #     error "__cpp_lib_atomic_wait should be defined in c++20"
3303 #   endif
3304 #   if __cpp_lib_atomic_wait != 201907L
3305 #     error "__cpp_lib_atomic_wait should have the value 201907L in c++20"
3306 #   endif
3307 # else
3308 #   ifdef __cpp_lib_atomic_wait
3309 #     error "__cpp_lib_atomic_wait should not be defined when the requirement '!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC' is not met!"
3310 #   endif
3311 # endif
3312 
3313 # if !defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)
3314 #   ifndef __cpp_lib_barrier
3315 #     error "__cpp_lib_barrier should be defined in c++20"
3316 #   endif
3317 #   if __cpp_lib_barrier != 201907L
3318 #     error "__cpp_lib_barrier should have the value 201907L in c++20"
3319 #   endif
3320 # else
3321 #   ifdef __cpp_lib_barrier
3322 #     error "__cpp_lib_barrier should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)' is not met!"
3323 #   endif
3324 # endif
3325 
3326 # ifdef __cpp_lib_bind_back
3327 #   error "__cpp_lib_bind_back should not be defined before c++23"
3328 # endif
3329 
3330 # ifndef __cpp_lib_bind_front
3331 #   error "__cpp_lib_bind_front should be defined in c++20"
3332 # endif
3333 # if __cpp_lib_bind_front != 201907L
3334 #   error "__cpp_lib_bind_front should have the value 201907L in c++20"
3335 # endif
3336 
3337 # ifndef __cpp_lib_bit_cast
3338 #   error "__cpp_lib_bit_cast should be defined in c++20"
3339 # endif
3340 # if __cpp_lib_bit_cast != 201806L
3341 #   error "__cpp_lib_bit_cast should have the value 201806L in c++20"
3342 # endif
3343 
3344 # ifndef __cpp_lib_bitops
3345 #   error "__cpp_lib_bitops should be defined in c++20"
3346 # endif
3347 # if __cpp_lib_bitops != 201907L
3348 #   error "__cpp_lib_bitops should have the value 201907L in c++20"
3349 # endif
3350 
3351 # ifdef __cpp_lib_bitset
3352 #   error "__cpp_lib_bitset should not be defined before c++26"
3353 # endif
3354 
3355 # ifndef __cpp_lib_bool_constant
3356 #   error "__cpp_lib_bool_constant should be defined in c++20"
3357 # endif
3358 # if __cpp_lib_bool_constant != 201505L
3359 #   error "__cpp_lib_bool_constant should have the value 201505L in c++20"
3360 # endif
3361 
3362 # ifndef __cpp_lib_bounded_array_traits
3363 #   error "__cpp_lib_bounded_array_traits should be defined in c++20"
3364 # endif
3365 # if __cpp_lib_bounded_array_traits != 201902L
3366 #   error "__cpp_lib_bounded_array_traits should have the value 201902L in c++20"
3367 # endif
3368 
3369 # ifndef __cpp_lib_boyer_moore_searcher
3370 #   error "__cpp_lib_boyer_moore_searcher should be defined in c++20"
3371 # endif
3372 # if __cpp_lib_boyer_moore_searcher != 201603L
3373 #   error "__cpp_lib_boyer_moore_searcher should have the value 201603L in c++20"
3374 # endif
3375 
3376 # ifndef __cpp_lib_byte
3377 #   error "__cpp_lib_byte should be defined in c++20"
3378 # endif
3379 # if __cpp_lib_byte != 201603L
3380 #   error "__cpp_lib_byte should have the value 201603L in c++20"
3381 # endif
3382 
3383 # ifdef __cpp_lib_byteswap
3384 #   error "__cpp_lib_byteswap should not be defined before c++23"
3385 # endif
3386 
3387 # if defined(__cpp_char8_t)
3388 #   ifndef __cpp_lib_char8_t
3389 #     error "__cpp_lib_char8_t should be defined in c++20"
3390 #   endif
3391 #   if __cpp_lib_char8_t != 201907L
3392 #     error "__cpp_lib_char8_t should have the value 201907L in c++20"
3393 #   endif
3394 # else
3395 #   ifdef __cpp_lib_char8_t
3396 #     error "__cpp_lib_char8_t should not be defined when the requirement 'defined(__cpp_char8_t)' is not met!"
3397 #   endif
3398 # endif
3399 
3400 # ifndef __cpp_lib_chrono
3401 #   error "__cpp_lib_chrono should be defined in c++20"
3402 # endif
3403 # if __cpp_lib_chrono != 201611L
3404 #   error "__cpp_lib_chrono should have the value 201611L in c++20"
3405 # endif
3406 
3407 # ifndef __cpp_lib_chrono_udls
3408 #   error "__cpp_lib_chrono_udls should be defined in c++20"
3409 # endif
3410 # if __cpp_lib_chrono_udls != 201304L
3411 #   error "__cpp_lib_chrono_udls should have the value 201304L in c++20"
3412 # endif
3413 
3414 # ifndef __cpp_lib_clamp
3415 #   error "__cpp_lib_clamp should be defined in c++20"
3416 # endif
3417 # if __cpp_lib_clamp != 201603L
3418 #   error "__cpp_lib_clamp should have the value 201603L in c++20"
3419 # endif
3420 
3421 # ifndef __cpp_lib_complex_udls
3422 #   error "__cpp_lib_complex_udls should be defined in c++20"
3423 # endif
3424 # if __cpp_lib_complex_udls != 201309L
3425 #   error "__cpp_lib_complex_udls should have the value 201309L in c++20"
3426 # endif
3427 
3428 # ifndef __cpp_lib_concepts
3429 #   error "__cpp_lib_concepts should be defined in c++20"
3430 # endif
3431 # if __cpp_lib_concepts != 202002L
3432 #   error "__cpp_lib_concepts should have the value 202002L in c++20"
3433 # endif
3434 
3435 # ifndef __cpp_lib_constexpr_algorithms
3436 #   error "__cpp_lib_constexpr_algorithms should be defined in c++20"
3437 # endif
3438 # if __cpp_lib_constexpr_algorithms != 201806L
3439 #   error "__cpp_lib_constexpr_algorithms should have the value 201806L in c++20"
3440 # endif
3441 
3442 # ifdef __cpp_lib_constexpr_bitset
3443 #   error "__cpp_lib_constexpr_bitset should not be defined before c++23"
3444 # endif
3445 
3446 # ifdef __cpp_lib_constexpr_charconv
3447 #   error "__cpp_lib_constexpr_charconv should not be defined before c++23"
3448 # endif
3449 
3450 # ifdef __cpp_lib_constexpr_cmath
3451 #   error "__cpp_lib_constexpr_cmath should not be defined before c++23"
3452 # endif
3453 
3454 # ifndef __cpp_lib_constexpr_complex
3455 #   error "__cpp_lib_constexpr_complex should be defined in c++20"
3456 # endif
3457 # if __cpp_lib_constexpr_complex != 201711L
3458 #   error "__cpp_lib_constexpr_complex should have the value 201711L in c++20"
3459 # endif
3460 
3461 # ifndef __cpp_lib_constexpr_dynamic_alloc
3462 #   error "__cpp_lib_constexpr_dynamic_alloc should be defined in c++20"
3463 # endif
3464 # if __cpp_lib_constexpr_dynamic_alloc != 201907L
3465 #   error "__cpp_lib_constexpr_dynamic_alloc should have the value 201907L in c++20"
3466 # endif
3467 
3468 # ifndef __cpp_lib_constexpr_functional
3469 #   error "__cpp_lib_constexpr_functional should be defined in c++20"
3470 # endif
3471 # if __cpp_lib_constexpr_functional != 201907L
3472 #   error "__cpp_lib_constexpr_functional should have the value 201907L in c++20"
3473 # endif
3474 
3475 # ifndef __cpp_lib_constexpr_iterator
3476 #   error "__cpp_lib_constexpr_iterator should be defined in c++20"
3477 # endif
3478 # if __cpp_lib_constexpr_iterator != 201811L
3479 #   error "__cpp_lib_constexpr_iterator should have the value 201811L in c++20"
3480 # endif
3481 
3482 # ifndef __cpp_lib_constexpr_memory
3483 #   error "__cpp_lib_constexpr_memory should be defined in c++20"
3484 # endif
3485 # if __cpp_lib_constexpr_memory != 201811L
3486 #   error "__cpp_lib_constexpr_memory should have the value 201811L in c++20"
3487 # endif
3488 
3489 # ifdef __cpp_lib_constexpr_new
3490 #   error "__cpp_lib_constexpr_new should not be defined before c++26"
3491 # endif
3492 
3493 # ifndef __cpp_lib_constexpr_numeric
3494 #   error "__cpp_lib_constexpr_numeric should be defined in c++20"
3495 # endif
3496 # if __cpp_lib_constexpr_numeric != 201911L
3497 #   error "__cpp_lib_constexpr_numeric should have the value 201911L in c++20"
3498 # endif
3499 
3500 # ifndef __cpp_lib_constexpr_string
3501 #   error "__cpp_lib_constexpr_string should be defined in c++20"
3502 # endif
3503 # if __cpp_lib_constexpr_string != 201907L
3504 #   error "__cpp_lib_constexpr_string should have the value 201907L in c++20"
3505 # endif
3506 
3507 # ifndef __cpp_lib_constexpr_string_view
3508 #   error "__cpp_lib_constexpr_string_view should be defined in c++20"
3509 # endif
3510 # if __cpp_lib_constexpr_string_view != 201811L
3511 #   error "__cpp_lib_constexpr_string_view should have the value 201811L in c++20"
3512 # endif
3513 
3514 # ifndef __cpp_lib_constexpr_tuple
3515 #   error "__cpp_lib_constexpr_tuple should be defined in c++20"
3516 # endif
3517 # if __cpp_lib_constexpr_tuple != 201811L
3518 #   error "__cpp_lib_constexpr_tuple should have the value 201811L in c++20"
3519 # endif
3520 
3521 # ifdef __cpp_lib_constexpr_typeinfo
3522 #   error "__cpp_lib_constexpr_typeinfo should not be defined before c++23"
3523 # endif
3524 
3525 # ifndef __cpp_lib_constexpr_utility
3526 #   error "__cpp_lib_constexpr_utility should be defined in c++20"
3527 # endif
3528 # if __cpp_lib_constexpr_utility != 201811L
3529 #   error "__cpp_lib_constexpr_utility should have the value 201811L in c++20"
3530 # endif
3531 
3532 # ifndef __cpp_lib_constexpr_vector
3533 #   error "__cpp_lib_constexpr_vector should be defined in c++20"
3534 # endif
3535 # if __cpp_lib_constexpr_vector != 201907L
3536 #   error "__cpp_lib_constexpr_vector should have the value 201907L in c++20"
3537 # endif
3538 
3539 # ifdef __cpp_lib_constrained_equality
3540 #   error "__cpp_lib_constrained_equality should not be defined before c++26"
3541 # endif
3542 
3543 # ifdef __cpp_lib_containers_ranges
3544 #   error "__cpp_lib_containers_ranges should not be defined before c++23"
3545 # endif
3546 
3547 # ifdef __cpp_lib_copyable_function
3548 #   error "__cpp_lib_copyable_function should not be defined before c++26"
3549 # endif
3550 
3551 # ifndef __cpp_lib_coroutine
3552 #   error "__cpp_lib_coroutine should be defined in c++20"
3553 # endif
3554 # if __cpp_lib_coroutine != 201902L
3555 #   error "__cpp_lib_coroutine should have the value 201902L in c++20"
3556 # endif
3557 
3558 # ifdef __cpp_lib_debugging
3559 #   error "__cpp_lib_debugging should not be defined before c++26"
3560 # endif
3561 
3562 # ifdef __cpp_lib_default_template_type_for_algorithm_values
3563 #   error "__cpp_lib_default_template_type_for_algorithm_values should not be defined before c++26"
3564 # endif
3565 
3566 # if TEST_STD_VER > 17 && defined(__cpp_impl_destroying_delete) && __cpp_impl_destroying_delete >= 201806L
3567 #   ifndef __cpp_lib_destroying_delete
3568 #     error "__cpp_lib_destroying_delete should be defined in c++20"
3569 #   endif
3570 #   if __cpp_lib_destroying_delete != 201806L
3571 #     error "__cpp_lib_destroying_delete should have the value 201806L in c++20"
3572 #   endif
3573 # else
3574 #   ifdef __cpp_lib_destroying_delete
3575 #     error "__cpp_lib_destroying_delete should not be defined when the requirement 'TEST_STD_VER > 17 && defined(__cpp_impl_destroying_delete) && __cpp_impl_destroying_delete >= 201806L' is not met!"
3576 #   endif
3577 # endif
3578 
3579 # ifndef __cpp_lib_enable_shared_from_this
3580 #   error "__cpp_lib_enable_shared_from_this should be defined in c++20"
3581 # endif
3582 # if __cpp_lib_enable_shared_from_this != 201603L
3583 #   error "__cpp_lib_enable_shared_from_this should have the value 201603L in c++20"
3584 # endif
3585 
3586 # ifndef __cpp_lib_endian
3587 #   error "__cpp_lib_endian should be defined in c++20"
3588 # endif
3589 # if __cpp_lib_endian != 201907L
3590 #   error "__cpp_lib_endian should have the value 201907L in c++20"
3591 # endif
3592 
3593 # ifndef __cpp_lib_erase_if
3594 #   error "__cpp_lib_erase_if should be defined in c++20"
3595 # endif
3596 # if __cpp_lib_erase_if != 202002L
3597 #   error "__cpp_lib_erase_if should have the value 202002L in c++20"
3598 # endif
3599 
3600 # ifndef __cpp_lib_exchange_function
3601 #   error "__cpp_lib_exchange_function should be defined in c++20"
3602 # endif
3603 # if __cpp_lib_exchange_function != 201304L
3604 #   error "__cpp_lib_exchange_function should have the value 201304L in c++20"
3605 # endif
3606 
3607 # if !defined(_LIBCPP_VERSION)
3608 #   ifndef __cpp_lib_execution
3609 #     error "__cpp_lib_execution should be defined in c++20"
3610 #   endif
3611 #   if __cpp_lib_execution != 201902L
3612 #     error "__cpp_lib_execution should have the value 201902L in c++20"
3613 #   endif
3614 # else // _LIBCPP_VERSION
3615 #   ifdef __cpp_lib_execution
3616 #     error "__cpp_lib_execution should not be defined because it is unimplemented in libc++!"
3617 #   endif
3618 # endif
3619 
3620 # ifdef __cpp_lib_expected
3621 #   error "__cpp_lib_expected should not be defined before c++23"
3622 # endif
3623 
3624 # if !defined(_LIBCPP_VERSION) || (!defined(_LIBCPP_HAS_NO_FILESYSTEM) && _LIBCPP_AVAILABILITY_HAS_FILESYSTEM_LIBRARY)
3625 #   ifndef __cpp_lib_filesystem
3626 #     error "__cpp_lib_filesystem should be defined in c++20"
3627 #   endif
3628 #   if __cpp_lib_filesystem != 201703L
3629 #     error "__cpp_lib_filesystem should have the value 201703L in c++20"
3630 #   endif
3631 # else
3632 #   ifdef __cpp_lib_filesystem
3633 #     error "__cpp_lib_filesystem should not be defined when the requirement '!defined(_LIBCPP_VERSION) || (!defined(_LIBCPP_HAS_NO_FILESYSTEM) && _LIBCPP_AVAILABILITY_HAS_FILESYSTEM_LIBRARY)' is not met!"
3634 #   endif
3635 # endif
3636 
3637 # ifndef __cpp_lib_format
3638 #   error "__cpp_lib_format should be defined in c++20"
3639 # endif
3640 # if __cpp_lib_format != 202110L
3641 #   error "__cpp_lib_format should have the value 202110L in c++20"
3642 # endif
3643 
3644 # ifdef __cpp_lib_format_path
3645 #   error "__cpp_lib_format_path should not be defined before c++26"
3646 # endif
3647 
3648 # ifdef __cpp_lib_format_ranges
3649 #   error "__cpp_lib_format_ranges should not be defined before c++23"
3650 # endif
3651 
3652 # ifndef __cpp_lib_format_uchar
3653 #   error "__cpp_lib_format_uchar should be defined in c++20"
3654 # endif
3655 # if __cpp_lib_format_uchar != 202311L
3656 #   error "__cpp_lib_format_uchar should have the value 202311L in c++20"
3657 # endif
3658 
3659 # ifdef __cpp_lib_formatters
3660 #   error "__cpp_lib_formatters should not be defined before c++23"
3661 # endif
3662 
3663 # ifdef __cpp_lib_forward_like
3664 #   error "__cpp_lib_forward_like should not be defined before c++23"
3665 # endif
3666 
3667 # ifdef __cpp_lib_freestanding_algorithm
3668 #   error "__cpp_lib_freestanding_algorithm should not be defined before c++26"
3669 # endif
3670 
3671 # ifdef __cpp_lib_freestanding_array
3672 #   error "__cpp_lib_freestanding_array should not be defined before c++26"
3673 # endif
3674 
3675 # ifdef __cpp_lib_freestanding_cstring
3676 #   error "__cpp_lib_freestanding_cstring should not be defined before c++26"
3677 # endif
3678 
3679 # ifdef __cpp_lib_freestanding_expected
3680 #   error "__cpp_lib_freestanding_expected should not be defined before c++26"
3681 # endif
3682 
3683 # ifdef __cpp_lib_freestanding_mdspan
3684 #   error "__cpp_lib_freestanding_mdspan should not be defined before c++26"
3685 # endif
3686 
3687 # ifdef __cpp_lib_freestanding_optional
3688 #   error "__cpp_lib_freestanding_optional should not be defined before c++26"
3689 # endif
3690 
3691 # ifdef __cpp_lib_freestanding_string_view
3692 #   error "__cpp_lib_freestanding_string_view should not be defined before c++26"
3693 # endif
3694 
3695 # ifdef __cpp_lib_freestanding_variant
3696 #   error "__cpp_lib_freestanding_variant should not be defined before c++26"
3697 # endif
3698 
3699 # ifdef __cpp_lib_fstream_native_handle
3700 #   error "__cpp_lib_fstream_native_handle should not be defined before c++26"
3701 # endif
3702 
3703 # ifdef __cpp_lib_function_ref
3704 #   error "__cpp_lib_function_ref should not be defined before c++26"
3705 # endif
3706 
3707 # ifndef __cpp_lib_gcd_lcm
3708 #   error "__cpp_lib_gcd_lcm should be defined in c++20"
3709 # endif
3710 # if __cpp_lib_gcd_lcm != 201606L
3711 #   error "__cpp_lib_gcd_lcm should have the value 201606L in c++20"
3712 # endif
3713 
3714 # ifdef __cpp_lib_generate_random
3715 #   error "__cpp_lib_generate_random should not be defined before c++26"
3716 # endif
3717 
3718 # ifndef __cpp_lib_generic_associative_lookup
3719 #   error "__cpp_lib_generic_associative_lookup should be defined in c++20"
3720 # endif
3721 # if __cpp_lib_generic_associative_lookup != 201304L
3722 #   error "__cpp_lib_generic_associative_lookup should have the value 201304L in c++20"
3723 # endif
3724 
3725 # ifndef __cpp_lib_generic_unordered_lookup
3726 #   error "__cpp_lib_generic_unordered_lookup should be defined in c++20"
3727 # endif
3728 # if __cpp_lib_generic_unordered_lookup != 201811L
3729 #   error "__cpp_lib_generic_unordered_lookup should have the value 201811L in c++20"
3730 # endif
3731 
3732 # if !defined(_LIBCPP_VERSION) || (defined(__GCC_DESTRUCTIVE_SIZE) && defined(__GCC_CONSTRUCTIVE_SIZE))
3733 #   ifndef __cpp_lib_hardware_interference_size
3734 #     error "__cpp_lib_hardware_interference_size should be defined in c++20"
3735 #   endif
3736 #   if __cpp_lib_hardware_interference_size != 201703L
3737 #     error "__cpp_lib_hardware_interference_size should have the value 201703L in c++20"
3738 #   endif
3739 # else
3740 #   ifdef __cpp_lib_hardware_interference_size
3741 #     error "__cpp_lib_hardware_interference_size should not be defined when the requirement '!defined(_LIBCPP_VERSION) || (defined(__GCC_DESTRUCTIVE_SIZE) && defined(__GCC_CONSTRUCTIVE_SIZE))' is not met!"
3742 #   endif
3743 # endif
3744 
3745 # ifndef __cpp_lib_has_unique_object_representations
3746 #   error "__cpp_lib_has_unique_object_representations should be defined in c++20"
3747 # endif
3748 # if __cpp_lib_has_unique_object_representations != 201606L
3749 #   error "__cpp_lib_has_unique_object_representations should have the value 201606L in c++20"
3750 # endif
3751 
3752 # ifdef __cpp_lib_hazard_pointer
3753 #   error "__cpp_lib_hazard_pointer should not be defined before c++26"
3754 # endif
3755 
3756 # ifndef __cpp_lib_hypot
3757 #   error "__cpp_lib_hypot should be defined in c++20"
3758 # endif
3759 # if __cpp_lib_hypot != 201603L
3760 #   error "__cpp_lib_hypot should have the value 201603L in c++20"
3761 # endif
3762 
3763 # ifndef __cpp_lib_incomplete_container_elements
3764 #   error "__cpp_lib_incomplete_container_elements should be defined in c++20"
3765 # endif
3766 # if __cpp_lib_incomplete_container_elements != 201505L
3767 #   error "__cpp_lib_incomplete_container_elements should have the value 201505L in c++20"
3768 # endif
3769 
3770 # ifdef __cpp_lib_inplace_vector
3771 #   error "__cpp_lib_inplace_vector should not be defined before c++26"
3772 # endif
3773 
3774 # ifndef __cpp_lib_int_pow2
3775 #   error "__cpp_lib_int_pow2 should be defined in c++20"
3776 # endif
3777 # if __cpp_lib_int_pow2 != 202002L
3778 #   error "__cpp_lib_int_pow2 should have the value 202002L in c++20"
3779 # endif
3780 
3781 # ifndef __cpp_lib_integer_comparison_functions
3782 #   error "__cpp_lib_integer_comparison_functions should be defined in c++20"
3783 # endif
3784 # if __cpp_lib_integer_comparison_functions != 202002L
3785 #   error "__cpp_lib_integer_comparison_functions should have the value 202002L in c++20"
3786 # endif
3787 
3788 # ifndef __cpp_lib_integer_sequence
3789 #   error "__cpp_lib_integer_sequence should be defined in c++20"
3790 # endif
3791 # if __cpp_lib_integer_sequence != 201304L
3792 #   error "__cpp_lib_integer_sequence should have the value 201304L in c++20"
3793 # endif
3794 
3795 # ifndef __cpp_lib_integral_constant_callable
3796 #   error "__cpp_lib_integral_constant_callable should be defined in c++20"
3797 # endif
3798 # if __cpp_lib_integral_constant_callable != 201304L
3799 #   error "__cpp_lib_integral_constant_callable should have the value 201304L in c++20"
3800 # endif
3801 
3802 # ifndef __cpp_lib_interpolate
3803 #   error "__cpp_lib_interpolate should be defined in c++20"
3804 # endif
3805 # if __cpp_lib_interpolate != 201902L
3806 #   error "__cpp_lib_interpolate should have the value 201902L in c++20"
3807 # endif
3808 
3809 # ifndef __cpp_lib_invoke
3810 #   error "__cpp_lib_invoke should be defined in c++20"
3811 # endif
3812 # if __cpp_lib_invoke != 201411L
3813 #   error "__cpp_lib_invoke should have the value 201411L in c++20"
3814 # endif
3815 
3816 # ifdef __cpp_lib_invoke_r
3817 #   error "__cpp_lib_invoke_r should not be defined before c++23"
3818 # endif
3819 
3820 # ifdef __cpp_lib_ios_noreplace
3821 #   error "__cpp_lib_ios_noreplace should not be defined before c++23"
3822 # endif
3823 
3824 # ifndef __cpp_lib_is_aggregate
3825 #   error "__cpp_lib_is_aggregate should be defined in c++20"
3826 # endif
3827 # if __cpp_lib_is_aggregate != 201703L
3828 #   error "__cpp_lib_is_aggregate should have the value 201703L in c++20"
3829 # endif
3830 
3831 # ifndef __cpp_lib_is_constant_evaluated
3832 #   error "__cpp_lib_is_constant_evaluated should be defined in c++20"
3833 # endif
3834 # if __cpp_lib_is_constant_evaluated != 201811L
3835 #   error "__cpp_lib_is_constant_evaluated should have the value 201811L in c++20"
3836 # endif
3837 
3838 # ifndef __cpp_lib_is_final
3839 #   error "__cpp_lib_is_final should be defined in c++20"
3840 # endif
3841 # if __cpp_lib_is_final != 201402L
3842 #   error "__cpp_lib_is_final should have the value 201402L in c++20"
3843 # endif
3844 
3845 # ifndef __cpp_lib_is_invocable
3846 #   error "__cpp_lib_is_invocable should be defined in c++20"
3847 # endif
3848 # if __cpp_lib_is_invocable != 201703L
3849 #   error "__cpp_lib_is_invocable should have the value 201703L in c++20"
3850 # endif
3851 
3852 # if !defined(_LIBCPP_VERSION)
3853 #   ifndef __cpp_lib_is_layout_compatible
3854 #     error "__cpp_lib_is_layout_compatible should be defined in c++20"
3855 #   endif
3856 #   if __cpp_lib_is_layout_compatible != 201907L
3857 #     error "__cpp_lib_is_layout_compatible should have the value 201907L in c++20"
3858 #   endif
3859 # else // _LIBCPP_VERSION
3860 #   ifdef __cpp_lib_is_layout_compatible
3861 #     error "__cpp_lib_is_layout_compatible should not be defined because it is unimplemented in libc++!"
3862 #   endif
3863 # endif
3864 
3865 # ifndef __cpp_lib_is_nothrow_convertible
3866 #   error "__cpp_lib_is_nothrow_convertible should be defined in c++20"
3867 # endif
3868 # if __cpp_lib_is_nothrow_convertible != 201806L
3869 #   error "__cpp_lib_is_nothrow_convertible should have the value 201806L in c++20"
3870 # endif
3871 
3872 # ifndef __cpp_lib_is_null_pointer
3873 #   error "__cpp_lib_is_null_pointer should be defined in c++20"
3874 # endif
3875 # if __cpp_lib_is_null_pointer != 201309L
3876 #   error "__cpp_lib_is_null_pointer should have the value 201309L in c++20"
3877 # endif
3878 
3879 # if !defined(_LIBCPP_VERSION)
3880 #   ifndef __cpp_lib_is_pointer_interconvertible
3881 #     error "__cpp_lib_is_pointer_interconvertible should be defined in c++20"
3882 #   endif
3883 #   if __cpp_lib_is_pointer_interconvertible != 201907L
3884 #     error "__cpp_lib_is_pointer_interconvertible should have the value 201907L in c++20"
3885 #   endif
3886 # else // _LIBCPP_VERSION
3887 #   ifdef __cpp_lib_is_pointer_interconvertible
3888 #     error "__cpp_lib_is_pointer_interconvertible should not be defined because it is unimplemented in libc++!"
3889 #   endif
3890 # endif
3891 
3892 # ifdef __cpp_lib_is_scoped_enum
3893 #   error "__cpp_lib_is_scoped_enum should not be defined before c++23"
3894 # endif
3895 
3896 # ifndef __cpp_lib_is_swappable
3897 #   error "__cpp_lib_is_swappable should be defined in c++20"
3898 # endif
3899 # if __cpp_lib_is_swappable != 201603L
3900 #   error "__cpp_lib_is_swappable should have the value 201603L in c++20"
3901 # endif
3902 
3903 # ifdef __cpp_lib_is_virtual_base_of
3904 #   error "__cpp_lib_is_virtual_base_of should not be defined before c++26"
3905 # endif
3906 
3907 # ifdef __cpp_lib_is_within_lifetime
3908 #   error "__cpp_lib_is_within_lifetime should not be defined before c++26"
3909 # endif
3910 
3911 # if !defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)
3912 #   ifndef __cpp_lib_jthread
3913 #     error "__cpp_lib_jthread should be defined in c++20"
3914 #   endif
3915 #   if __cpp_lib_jthread != 201911L
3916 #     error "__cpp_lib_jthread should have the value 201911L in c++20"
3917 #   endif
3918 # else
3919 #   ifdef __cpp_lib_jthread
3920 #     error "__cpp_lib_jthread should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)' is not met!"
3921 #   endif
3922 # endif
3923 
3924 # if !defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)
3925 #   ifndef __cpp_lib_latch
3926 #     error "__cpp_lib_latch should be defined in c++20"
3927 #   endif
3928 #   if __cpp_lib_latch != 201907L
3929 #     error "__cpp_lib_latch should have the value 201907L in c++20"
3930 #   endif
3931 # else
3932 #   ifdef __cpp_lib_latch
3933 #     error "__cpp_lib_latch should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)' is not met!"
3934 #   endif
3935 # endif
3936 
3937 # ifndef __cpp_lib_launder
3938 #   error "__cpp_lib_launder should be defined in c++20"
3939 # endif
3940 # if __cpp_lib_launder != 201606L
3941 #   error "__cpp_lib_launder should have the value 201606L in c++20"
3942 # endif
3943 
3944 # ifdef __cpp_lib_linalg
3945 #   error "__cpp_lib_linalg should not be defined before c++26"
3946 # endif
3947 
3948 # ifndef __cpp_lib_list_remove_return_type
3949 #   error "__cpp_lib_list_remove_return_type should be defined in c++20"
3950 # endif
3951 # if __cpp_lib_list_remove_return_type != 201806L
3952 #   error "__cpp_lib_list_remove_return_type should have the value 201806L in c++20"
3953 # endif
3954 
3955 # ifndef __cpp_lib_logical_traits
3956 #   error "__cpp_lib_logical_traits should be defined in c++20"
3957 # endif
3958 # if __cpp_lib_logical_traits != 201510L
3959 #   error "__cpp_lib_logical_traits should have the value 201510L in c++20"
3960 # endif
3961 
3962 # ifndef __cpp_lib_make_from_tuple
3963 #   error "__cpp_lib_make_from_tuple should be defined in c++20"
3964 # endif
3965 # if __cpp_lib_make_from_tuple != 201606L
3966 #   error "__cpp_lib_make_from_tuple should have the value 201606L in c++20"
3967 # endif
3968 
3969 # ifndef __cpp_lib_make_reverse_iterator
3970 #   error "__cpp_lib_make_reverse_iterator should be defined in c++20"
3971 # endif
3972 # if __cpp_lib_make_reverse_iterator != 201402L
3973 #   error "__cpp_lib_make_reverse_iterator should have the value 201402L in c++20"
3974 # endif
3975 
3976 # ifndef __cpp_lib_make_unique
3977 #   error "__cpp_lib_make_unique should be defined in c++20"
3978 # endif
3979 # if __cpp_lib_make_unique != 201304L
3980 #   error "__cpp_lib_make_unique should have the value 201304L in c++20"
3981 # endif
3982 
3983 # ifndef __cpp_lib_map_try_emplace
3984 #   error "__cpp_lib_map_try_emplace should be defined in c++20"
3985 # endif
3986 # if __cpp_lib_map_try_emplace != 201411L
3987 #   error "__cpp_lib_map_try_emplace should have the value 201411L in c++20"
3988 # endif
3989 
3990 # ifndef __cpp_lib_math_constants
3991 #   error "__cpp_lib_math_constants should be defined in c++20"
3992 # endif
3993 # if __cpp_lib_math_constants != 201907L
3994 #   error "__cpp_lib_math_constants should have the value 201907L in c++20"
3995 # endif
3996 
3997 # if !defined(_LIBCPP_VERSION)
3998 #   ifndef __cpp_lib_math_special_functions
3999 #     error "__cpp_lib_math_special_functions should be defined in c++20"
4000 #   endif
4001 #   if __cpp_lib_math_special_functions != 201603L
4002 #     error "__cpp_lib_math_special_functions should have the value 201603L in c++20"
4003 #   endif
4004 # else // _LIBCPP_VERSION
4005 #   ifdef __cpp_lib_math_special_functions
4006 #     error "__cpp_lib_math_special_functions should not be defined because it is unimplemented in libc++!"
4007 #   endif
4008 # endif
4009 
4010 # ifdef __cpp_lib_mdspan
4011 #   error "__cpp_lib_mdspan should not be defined before c++23"
4012 # endif
4013 
4014 # if !defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_PMR
4015 #   ifndef __cpp_lib_memory_resource
4016 #     error "__cpp_lib_memory_resource should be defined in c++20"
4017 #   endif
4018 #   if __cpp_lib_memory_resource != 201603L
4019 #     error "__cpp_lib_memory_resource should have the value 201603L in c++20"
4020 #   endif
4021 # else
4022 #   ifdef __cpp_lib_memory_resource
4023 #     error "__cpp_lib_memory_resource should not be defined when the requirement '!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_PMR' is not met!"
4024 #   endif
4025 # endif
4026 
4027 # ifdef __cpp_lib_modules
4028 #   error "__cpp_lib_modules should not be defined before c++23"
4029 # endif
4030 
4031 # ifndef __cpp_lib_move_iterator_concept
4032 #   error "__cpp_lib_move_iterator_concept should be defined in c++20"
4033 # endif
4034 # if __cpp_lib_move_iterator_concept != 202207L
4035 #   error "__cpp_lib_move_iterator_concept should have the value 202207L in c++20"
4036 # endif
4037 
4038 # ifdef __cpp_lib_move_only_function
4039 #   error "__cpp_lib_move_only_function should not be defined before c++23"
4040 # endif
4041 
4042 # ifndef __cpp_lib_node_extract
4043 #   error "__cpp_lib_node_extract should be defined in c++20"
4044 # endif
4045 # if __cpp_lib_node_extract != 201606L
4046 #   error "__cpp_lib_node_extract should have the value 201606L in c++20"
4047 # endif
4048 
4049 # ifndef __cpp_lib_nonmember_container_access
4050 #   error "__cpp_lib_nonmember_container_access should be defined in c++20"
4051 # endif
4052 # if __cpp_lib_nonmember_container_access != 201411L
4053 #   error "__cpp_lib_nonmember_container_access should have the value 201411L in c++20"
4054 # endif
4055 
4056 # ifndef __cpp_lib_not_fn
4057 #   error "__cpp_lib_not_fn should be defined in c++20"
4058 # endif
4059 # if __cpp_lib_not_fn != 201603L
4060 #   error "__cpp_lib_not_fn should have the value 201603L in c++20"
4061 # endif
4062 
4063 # ifndef __cpp_lib_null_iterators
4064 #   error "__cpp_lib_null_iterators should be defined in c++20"
4065 # endif
4066 # if __cpp_lib_null_iterators != 201304L
4067 #   error "__cpp_lib_null_iterators should have the value 201304L in c++20"
4068 # endif
4069 
4070 # ifndef __cpp_lib_optional
4071 #   error "__cpp_lib_optional should be defined in c++20"
4072 # endif
4073 # if __cpp_lib_optional != 201606L
4074 #   error "__cpp_lib_optional should have the value 201606L in c++20"
4075 # endif
4076 
4077 # ifdef __cpp_lib_optional_range_support
4078 #   error "__cpp_lib_optional_range_support should not be defined before c++26"
4079 # endif
4080 
4081 # ifdef __cpp_lib_out_ptr
4082 #   error "__cpp_lib_out_ptr should not be defined before c++23"
4083 # endif
4084 
4085 # if !defined(_LIBCPP_VERSION)
4086 #   ifndef __cpp_lib_parallel_algorithm
4087 #     error "__cpp_lib_parallel_algorithm should be defined in c++20"
4088 #   endif
4089 #   if __cpp_lib_parallel_algorithm != 201603L
4090 #     error "__cpp_lib_parallel_algorithm should have the value 201603L in c++20"
4091 #   endif
4092 # else // _LIBCPP_VERSION
4093 #   ifdef __cpp_lib_parallel_algorithm
4094 #     error "__cpp_lib_parallel_algorithm should not be defined because it is unimplemented in libc++!"
4095 #   endif
4096 # endif
4097 
4098 # ifdef __cpp_lib_philox_engine
4099 #   error "__cpp_lib_philox_engine should not be defined before c++26"
4100 # endif
4101 
4102 # if !defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_PMR
4103 #   ifndef __cpp_lib_polymorphic_allocator
4104 #     error "__cpp_lib_polymorphic_allocator should be defined in c++20"
4105 #   endif
4106 #   if __cpp_lib_polymorphic_allocator != 201902L
4107 #     error "__cpp_lib_polymorphic_allocator should have the value 201902L in c++20"
4108 #   endif
4109 # else
4110 #   ifdef __cpp_lib_polymorphic_allocator
4111 #     error "__cpp_lib_polymorphic_allocator should not be defined when the requirement '!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_PMR' is not met!"
4112 #   endif
4113 # endif
4114 
4115 # ifdef __cpp_lib_print
4116 #   error "__cpp_lib_print should not be defined before c++23"
4117 # endif
4118 
4119 # if !defined(_LIBCPP_VERSION) || !defined(_LIBCPP_HAS_NO_LOCALIZATION)
4120 #   ifndef __cpp_lib_quoted_string_io
4121 #     error "__cpp_lib_quoted_string_io should be defined in c++20"
4122 #   endif
4123 #   if __cpp_lib_quoted_string_io != 201304L
4124 #     error "__cpp_lib_quoted_string_io should have the value 201304L in c++20"
4125 #   endif
4126 # else
4127 #   ifdef __cpp_lib_quoted_string_io
4128 #     error "__cpp_lib_quoted_string_io should not be defined when the requirement '!defined(_LIBCPP_VERSION) || !defined(_LIBCPP_HAS_NO_LOCALIZATION)' is not met!"
4129 #   endif
4130 # endif
4131 
4132 # ifndef __cpp_lib_ranges
4133 #   error "__cpp_lib_ranges should be defined in c++20"
4134 # endif
4135 # if __cpp_lib_ranges != 202110L
4136 #   error "__cpp_lib_ranges should have the value 202110L in c++20"
4137 # endif
4138 
4139 # ifdef __cpp_lib_ranges_as_const
4140 #   error "__cpp_lib_ranges_as_const should not be defined before c++23"
4141 # endif
4142 
4143 # ifdef __cpp_lib_ranges_as_rvalue
4144 #   error "__cpp_lib_ranges_as_rvalue should not be defined before c++23"
4145 # endif
4146 
4147 # ifdef __cpp_lib_ranges_chunk
4148 #   error "__cpp_lib_ranges_chunk should not be defined before c++23"
4149 # endif
4150 
4151 # ifdef __cpp_lib_ranges_chunk_by
4152 #   error "__cpp_lib_ranges_chunk_by should not be defined before c++23"
4153 # endif
4154 
4155 # ifdef __cpp_lib_ranges_concat
4156 #   error "__cpp_lib_ranges_concat should not be defined before c++26"
4157 # endif
4158 
4159 # ifdef __cpp_lib_ranges_contains
4160 #   error "__cpp_lib_ranges_contains should not be defined before c++23"
4161 # endif
4162 
4163 # ifdef __cpp_lib_ranges_find_last
4164 #   error "__cpp_lib_ranges_find_last should not be defined before c++23"
4165 # endif
4166 
4167 # ifdef __cpp_lib_ranges_iota
4168 #   error "__cpp_lib_ranges_iota should not be defined before c++23"
4169 # endif
4170 
4171 # ifdef __cpp_lib_ranges_join_with
4172 #   error "__cpp_lib_ranges_join_with should not be defined before c++23"
4173 # endif
4174 
4175 # ifdef __cpp_lib_ranges_repeat
4176 #   error "__cpp_lib_ranges_repeat should not be defined before c++23"
4177 # endif
4178 
4179 # ifdef __cpp_lib_ranges_slide
4180 #   error "__cpp_lib_ranges_slide should not be defined before c++23"
4181 # endif
4182 
4183 # ifdef __cpp_lib_ranges_starts_ends_with
4184 #   error "__cpp_lib_ranges_starts_ends_with should not be defined before c++23"
4185 # endif
4186 
4187 # ifdef __cpp_lib_ranges_to_container
4188 #   error "__cpp_lib_ranges_to_container should not be defined before c++23"
4189 # endif
4190 
4191 # ifdef __cpp_lib_ranges_zip
4192 #   error "__cpp_lib_ranges_zip should not be defined before c++23"
4193 # endif
4194 
4195 # ifdef __cpp_lib_ratio
4196 #   error "__cpp_lib_ratio should not be defined before c++26"
4197 # endif
4198 
4199 # ifndef __cpp_lib_raw_memory_algorithms
4200 #   error "__cpp_lib_raw_memory_algorithms should be defined in c++20"
4201 # endif
4202 # if __cpp_lib_raw_memory_algorithms != 201606L
4203 #   error "__cpp_lib_raw_memory_algorithms should have the value 201606L in c++20"
4204 # endif
4205 
4206 # ifdef __cpp_lib_rcu
4207 #   error "__cpp_lib_rcu should not be defined before c++26"
4208 # endif
4209 
4210 # ifdef __cpp_lib_reference_from_temporary
4211 #   error "__cpp_lib_reference_from_temporary should not be defined before c++23"
4212 # endif
4213 
4214 # ifdef __cpp_lib_reference_wrapper
4215 #   error "__cpp_lib_reference_wrapper should not be defined before c++26"
4216 # endif
4217 
4218 # ifndef __cpp_lib_remove_cvref
4219 #   error "__cpp_lib_remove_cvref should be defined in c++20"
4220 # endif
4221 # if __cpp_lib_remove_cvref != 201711L
4222 #   error "__cpp_lib_remove_cvref should have the value 201711L in c++20"
4223 # endif
4224 
4225 # ifndef __cpp_lib_result_of_sfinae
4226 #   error "__cpp_lib_result_of_sfinae should be defined in c++20"
4227 # endif
4228 # if __cpp_lib_result_of_sfinae != 201210L
4229 #   error "__cpp_lib_result_of_sfinae should have the value 201210L in c++20"
4230 # endif
4231 
4232 # ifndef __cpp_lib_robust_nonmodifying_seq_ops
4233 #   error "__cpp_lib_robust_nonmodifying_seq_ops should be defined in c++20"
4234 # endif
4235 # if __cpp_lib_robust_nonmodifying_seq_ops != 201304L
4236 #   error "__cpp_lib_robust_nonmodifying_seq_ops should have the value 201304L in c++20"
4237 # endif
4238 
4239 # ifndef __cpp_lib_sample
4240 #   error "__cpp_lib_sample should be defined in c++20"
4241 # endif
4242 # if __cpp_lib_sample != 201603L
4243 #   error "__cpp_lib_sample should have the value 201603L in c++20"
4244 # endif
4245 
4246 # ifdef __cpp_lib_saturation_arithmetic
4247 #   error "__cpp_lib_saturation_arithmetic should not be defined before c++26"
4248 # endif
4249 
4250 # if !defined(_LIBCPP_HAS_NO_THREADS)
4251 #   ifndef __cpp_lib_scoped_lock
4252 #     error "__cpp_lib_scoped_lock should be defined in c++20"
4253 #   endif
4254 #   if __cpp_lib_scoped_lock != 201703L
4255 #     error "__cpp_lib_scoped_lock should have the value 201703L in c++20"
4256 #   endif
4257 # else
4258 #   ifdef __cpp_lib_scoped_lock
4259 #     error "__cpp_lib_scoped_lock should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS)' is not met!"
4260 #   endif
4261 # endif
4262 
4263 # if !defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)
4264 #   ifndef __cpp_lib_semaphore
4265 #     error "__cpp_lib_semaphore should be defined in c++20"
4266 #   endif
4267 #   if __cpp_lib_semaphore != 201907L
4268 #     error "__cpp_lib_semaphore should have the value 201907L in c++20"
4269 #   endif
4270 # else
4271 #   ifdef __cpp_lib_semaphore
4272 #     error "__cpp_lib_semaphore should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)' is not met!"
4273 #   endif
4274 # endif
4275 
4276 # ifdef __cpp_lib_senders
4277 #   error "__cpp_lib_senders should not be defined before c++26"
4278 # endif
4279 
4280 # if !defined(_LIBCPP_HAS_NO_THREADS)
4281 #   ifndef __cpp_lib_shared_mutex
4282 #     error "__cpp_lib_shared_mutex should be defined in c++20"
4283 #   endif
4284 #   if __cpp_lib_shared_mutex != 201505L
4285 #     error "__cpp_lib_shared_mutex should have the value 201505L in c++20"
4286 #   endif
4287 # else
4288 #   ifdef __cpp_lib_shared_mutex
4289 #     error "__cpp_lib_shared_mutex should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS)' is not met!"
4290 #   endif
4291 # endif
4292 
4293 # ifndef __cpp_lib_shared_ptr_arrays
4294 #   error "__cpp_lib_shared_ptr_arrays should be defined in c++20"
4295 # endif
4296 # if __cpp_lib_shared_ptr_arrays != 201707L
4297 #   error "__cpp_lib_shared_ptr_arrays should have the value 201707L in c++20"
4298 # endif
4299 
4300 # ifndef __cpp_lib_shared_ptr_weak_type
4301 #   error "__cpp_lib_shared_ptr_weak_type should be defined in c++20"
4302 # endif
4303 # if __cpp_lib_shared_ptr_weak_type != 201606L
4304 #   error "__cpp_lib_shared_ptr_weak_type should have the value 201606L in c++20"
4305 # endif
4306 
4307 # if !defined(_LIBCPP_HAS_NO_THREADS)
4308 #   ifndef __cpp_lib_shared_timed_mutex
4309 #     error "__cpp_lib_shared_timed_mutex should be defined in c++20"
4310 #   endif
4311 #   if __cpp_lib_shared_timed_mutex != 201402L
4312 #     error "__cpp_lib_shared_timed_mutex should have the value 201402L in c++20"
4313 #   endif
4314 # else
4315 #   ifdef __cpp_lib_shared_timed_mutex
4316 #     error "__cpp_lib_shared_timed_mutex should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS)' is not met!"
4317 #   endif
4318 # endif
4319 
4320 # ifndef __cpp_lib_shift
4321 #   error "__cpp_lib_shift should be defined in c++20"
4322 # endif
4323 # if __cpp_lib_shift != 201806L
4324 #   error "__cpp_lib_shift should have the value 201806L in c++20"
4325 # endif
4326 
4327 # if !defined(_LIBCPP_VERSION)
4328 #   ifndef __cpp_lib_smart_ptr_for_overwrite
4329 #     error "__cpp_lib_smart_ptr_for_overwrite should be defined in c++20"
4330 #   endif
4331 #   if __cpp_lib_smart_ptr_for_overwrite != 202002L
4332 #     error "__cpp_lib_smart_ptr_for_overwrite should have the value 202002L in c++20"
4333 #   endif
4334 # else // _LIBCPP_VERSION
4335 #   ifdef __cpp_lib_smart_ptr_for_overwrite
4336 #     error "__cpp_lib_smart_ptr_for_overwrite should not be defined because it is unimplemented in libc++!"
4337 #   endif
4338 # endif
4339 
4340 # ifdef __cpp_lib_smart_ptr_owner_equality
4341 #   error "__cpp_lib_smart_ptr_owner_equality should not be defined before c++26"
4342 # endif
4343 
4344 # ifndef __cpp_lib_source_location
4345 #   error "__cpp_lib_source_location should be defined in c++20"
4346 # endif
4347 # if __cpp_lib_source_location != 201907L
4348 #   error "__cpp_lib_source_location should have the value 201907L in c++20"
4349 # endif
4350 
4351 # ifndef __cpp_lib_span
4352 #   error "__cpp_lib_span should be defined in c++20"
4353 # endif
4354 # if __cpp_lib_span != 202002L
4355 #   error "__cpp_lib_span should have the value 202002L in c++20"
4356 # endif
4357 
4358 # ifdef __cpp_lib_span_at
4359 #   error "__cpp_lib_span_at should not be defined before c++26"
4360 # endif
4361 
4362 # ifdef __cpp_lib_span_initializer_list
4363 #   error "__cpp_lib_span_initializer_list should not be defined before c++26"
4364 # endif
4365 
4366 # ifdef __cpp_lib_spanstream
4367 #   error "__cpp_lib_spanstream should not be defined before c++23"
4368 # endif
4369 
4370 # ifndef __cpp_lib_ssize
4371 #   error "__cpp_lib_ssize should be defined in c++20"
4372 # endif
4373 # if __cpp_lib_ssize != 201902L
4374 #   error "__cpp_lib_ssize should have the value 201902L in c++20"
4375 # endif
4376 
4377 # ifdef __cpp_lib_sstream_from_string_view
4378 #   error "__cpp_lib_sstream_from_string_view should not be defined before c++26"
4379 # endif
4380 
4381 # ifdef __cpp_lib_stacktrace
4382 #   error "__cpp_lib_stacktrace should not be defined before c++23"
4383 # endif
4384 
4385 # ifndef __cpp_lib_starts_ends_with
4386 #   error "__cpp_lib_starts_ends_with should be defined in c++20"
4387 # endif
4388 # if __cpp_lib_starts_ends_with != 201711L
4389 #   error "__cpp_lib_starts_ends_with should have the value 201711L in c++20"
4390 # endif
4391 
4392 # ifdef __cpp_lib_stdatomic_h
4393 #   error "__cpp_lib_stdatomic_h should not be defined before c++23"
4394 # endif
4395 
4396 # ifdef __cpp_lib_string_contains
4397 #   error "__cpp_lib_string_contains should not be defined before c++23"
4398 # endif
4399 
4400 # ifdef __cpp_lib_string_resize_and_overwrite
4401 #   error "__cpp_lib_string_resize_and_overwrite should not be defined before c++23"
4402 # endif
4403 
4404 # ifndef __cpp_lib_string_udls
4405 #   error "__cpp_lib_string_udls should be defined in c++20"
4406 # endif
4407 # if __cpp_lib_string_udls != 201304L
4408 #   error "__cpp_lib_string_udls should have the value 201304L in c++20"
4409 # endif
4410 
4411 # ifndef __cpp_lib_string_view
4412 #   error "__cpp_lib_string_view should be defined in c++20"
4413 # endif
4414 # if __cpp_lib_string_view != 201803L
4415 #   error "__cpp_lib_string_view should have the value 201803L in c++20"
4416 # endif
4417 
4418 # ifdef __cpp_lib_submdspan
4419 #   error "__cpp_lib_submdspan should not be defined before c++26"
4420 # endif
4421 
4422 # if !defined(_LIBCPP_HAS_NO_EXPERIMENTAL_SYNCSTREAM)
4423 #   ifndef __cpp_lib_syncbuf
4424 #     error "__cpp_lib_syncbuf should be defined in c++20"
4425 #   endif
4426 #   if __cpp_lib_syncbuf != 201803L
4427 #     error "__cpp_lib_syncbuf should have the value 201803L in c++20"
4428 #   endif
4429 # else
4430 #   ifdef __cpp_lib_syncbuf
4431 #     error "__cpp_lib_syncbuf should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_EXPERIMENTAL_SYNCSTREAM)' is not met!"
4432 #   endif
4433 # endif
4434 
4435 # ifdef __cpp_lib_text_encoding
4436 #   error "__cpp_lib_text_encoding should not be defined before c++26"
4437 # endif
4438 
4439 # ifndef __cpp_lib_three_way_comparison
4440 #   error "__cpp_lib_three_way_comparison should be defined in c++20"
4441 # endif
4442 # if __cpp_lib_three_way_comparison != 201907L
4443 #   error "__cpp_lib_three_way_comparison should have the value 201907L in c++20"
4444 # endif
4445 
4446 # ifndef __cpp_lib_to_address
4447 #   error "__cpp_lib_to_address should be defined in c++20"
4448 # endif
4449 # if __cpp_lib_to_address != 201711L
4450 #   error "__cpp_lib_to_address should have the value 201711L in c++20"
4451 # endif
4452 
4453 # ifndef __cpp_lib_to_array
4454 #   error "__cpp_lib_to_array should be defined in c++20"
4455 # endif
4456 # if __cpp_lib_to_array != 201907L
4457 #   error "__cpp_lib_to_array should have the value 201907L in c++20"
4458 # endif
4459 
4460 # if !defined(_LIBCPP_VERSION)
4461 #   ifndef __cpp_lib_to_chars
4462 #     error "__cpp_lib_to_chars should be defined in c++20"
4463 #   endif
4464 #   if __cpp_lib_to_chars != 201611L
4465 #     error "__cpp_lib_to_chars should have the value 201611L in c++20"
4466 #   endif
4467 # else // _LIBCPP_VERSION
4468 #   ifdef __cpp_lib_to_chars
4469 #     error "__cpp_lib_to_chars should not be defined because it is unimplemented in libc++!"
4470 #   endif
4471 # endif
4472 
4473 # ifdef __cpp_lib_to_string
4474 #   error "__cpp_lib_to_string should not be defined before c++26"
4475 # endif
4476 
4477 # ifdef __cpp_lib_to_underlying
4478 #   error "__cpp_lib_to_underlying should not be defined before c++23"
4479 # endif
4480 
4481 # ifndef __cpp_lib_transformation_trait_aliases
4482 #   error "__cpp_lib_transformation_trait_aliases should be defined in c++20"
4483 # endif
4484 # if __cpp_lib_transformation_trait_aliases != 201304L
4485 #   error "__cpp_lib_transformation_trait_aliases should have the value 201304L in c++20"
4486 # endif
4487 
4488 # ifndef __cpp_lib_transparent_operators
4489 #   error "__cpp_lib_transparent_operators should be defined in c++20"
4490 # endif
4491 # if __cpp_lib_transparent_operators != 201510L
4492 #   error "__cpp_lib_transparent_operators should have the value 201510L in c++20"
4493 # endif
4494 
4495 # ifndef __cpp_lib_tuple_element_t
4496 #   error "__cpp_lib_tuple_element_t should be defined in c++20"
4497 # endif
4498 # if __cpp_lib_tuple_element_t != 201402L
4499 #   error "__cpp_lib_tuple_element_t should have the value 201402L in c++20"
4500 # endif
4501 
4502 # ifdef __cpp_lib_tuple_like
4503 #   error "__cpp_lib_tuple_like should not be defined before c++23"
4504 # endif
4505 
4506 # ifndef __cpp_lib_tuples_by_type
4507 #   error "__cpp_lib_tuples_by_type should be defined in c++20"
4508 # endif
4509 # if __cpp_lib_tuples_by_type != 201304L
4510 #   error "__cpp_lib_tuples_by_type should have the value 201304L in c++20"
4511 # endif
4512 
4513 # ifndef __cpp_lib_type_identity
4514 #   error "__cpp_lib_type_identity should be defined in c++20"
4515 # endif
4516 # if __cpp_lib_type_identity != 201806L
4517 #   error "__cpp_lib_type_identity should have the value 201806L in c++20"
4518 # endif
4519 
4520 # ifndef __cpp_lib_type_trait_variable_templates
4521 #   error "__cpp_lib_type_trait_variable_templates should be defined in c++20"
4522 # endif
4523 # if __cpp_lib_type_trait_variable_templates != 201510L
4524 #   error "__cpp_lib_type_trait_variable_templates should have the value 201510L in c++20"
4525 # endif
4526 
4527 # ifndef __cpp_lib_uncaught_exceptions
4528 #   error "__cpp_lib_uncaught_exceptions should be defined in c++20"
4529 # endif
4530 # if __cpp_lib_uncaught_exceptions != 201411L
4531 #   error "__cpp_lib_uncaught_exceptions should have the value 201411L in c++20"
4532 # endif
4533 
4534 # ifndef __cpp_lib_unordered_map_try_emplace
4535 #   error "__cpp_lib_unordered_map_try_emplace should be defined in c++20"
4536 # endif
4537 # if __cpp_lib_unordered_map_try_emplace != 201411L
4538 #   error "__cpp_lib_unordered_map_try_emplace should have the value 201411L in c++20"
4539 # endif
4540 
4541 # ifdef __cpp_lib_unreachable
4542 #   error "__cpp_lib_unreachable should not be defined before c++23"
4543 # endif
4544 
4545 # ifndef __cpp_lib_unwrap_ref
4546 #   error "__cpp_lib_unwrap_ref should be defined in c++20"
4547 # endif
4548 # if __cpp_lib_unwrap_ref != 201811L
4549 #   error "__cpp_lib_unwrap_ref should have the value 201811L in c++20"
4550 # endif
4551 
4552 # ifndef __cpp_lib_variant
4553 #   error "__cpp_lib_variant should be defined in c++20"
4554 # endif
4555 # if __cpp_lib_variant != 202102L
4556 #   error "__cpp_lib_variant should have the value 202102L in c++20"
4557 # endif
4558 
4559 # ifndef __cpp_lib_void_t
4560 #   error "__cpp_lib_void_t should be defined in c++20"
4561 # endif
4562 # if __cpp_lib_void_t != 201411L
4563 #   error "__cpp_lib_void_t should have the value 201411L in c++20"
4564 # endif
4565 
4566 #elif TEST_STD_VER == 23
4567 
4568 # ifndef __cpp_lib_adaptor_iterator_pair_constructor
4569 #   error "__cpp_lib_adaptor_iterator_pair_constructor should be defined in c++23"
4570 # endif
4571 # if __cpp_lib_adaptor_iterator_pair_constructor != 202106L
4572 #   error "__cpp_lib_adaptor_iterator_pair_constructor should have the value 202106L in c++23"
4573 # endif
4574 
4575 # ifndef __cpp_lib_addressof_constexpr
4576 #   error "__cpp_lib_addressof_constexpr should be defined in c++23"
4577 # endif
4578 # if __cpp_lib_addressof_constexpr != 201603L
4579 #   error "__cpp_lib_addressof_constexpr should have the value 201603L in c++23"
4580 # endif
4581 
4582 # ifndef __cpp_lib_allocate_at_least
4583 #   error "__cpp_lib_allocate_at_least should be defined in c++23"
4584 # endif
4585 # if __cpp_lib_allocate_at_least != 202302L
4586 #   error "__cpp_lib_allocate_at_least should have the value 202302L in c++23"
4587 # endif
4588 
4589 # ifndef __cpp_lib_allocator_traits_is_always_equal
4590 #   error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++23"
4591 # endif
4592 # if __cpp_lib_allocator_traits_is_always_equal != 201411L
4593 #   error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++23"
4594 # endif
4595 
4596 # ifndef __cpp_lib_any
4597 #   error "__cpp_lib_any should be defined in c++23"
4598 # endif
4599 # if __cpp_lib_any != 201606L
4600 #   error "__cpp_lib_any should have the value 201606L in c++23"
4601 # endif
4602 
4603 # ifndef __cpp_lib_apply
4604 #   error "__cpp_lib_apply should be defined in c++23"
4605 # endif
4606 # if __cpp_lib_apply != 201603L
4607 #   error "__cpp_lib_apply should have the value 201603L in c++23"
4608 # endif
4609 
4610 # ifndef __cpp_lib_array_constexpr
4611 #   error "__cpp_lib_array_constexpr should be defined in c++23"
4612 # endif
4613 # if __cpp_lib_array_constexpr != 201811L
4614 #   error "__cpp_lib_array_constexpr should have the value 201811L in c++23"
4615 # endif
4616 
4617 # ifndef __cpp_lib_as_const
4618 #   error "__cpp_lib_as_const should be defined in c++23"
4619 # endif
4620 # if __cpp_lib_as_const != 201510L
4621 #   error "__cpp_lib_as_const should have the value 201510L in c++23"
4622 # endif
4623 
4624 # if !defined(_LIBCPP_VERSION)
4625 #   ifndef __cpp_lib_associative_heterogeneous_erasure
4626 #     error "__cpp_lib_associative_heterogeneous_erasure should be defined in c++23"
4627 #   endif
4628 #   if __cpp_lib_associative_heterogeneous_erasure != 202110L
4629 #     error "__cpp_lib_associative_heterogeneous_erasure should have the value 202110L in c++23"
4630 #   endif
4631 # else // _LIBCPP_VERSION
4632 #   ifdef __cpp_lib_associative_heterogeneous_erasure
4633 #     error "__cpp_lib_associative_heterogeneous_erasure should not be defined because it is unimplemented in libc++!"
4634 #   endif
4635 # endif
4636 
4637 # ifdef __cpp_lib_associative_heterogeneous_insertion
4638 #   error "__cpp_lib_associative_heterogeneous_insertion should not be defined before c++26"
4639 # endif
4640 
4641 # ifndef __cpp_lib_assume_aligned
4642 #   error "__cpp_lib_assume_aligned should be defined in c++23"
4643 # endif
4644 # if __cpp_lib_assume_aligned != 201811L
4645 #   error "__cpp_lib_assume_aligned should have the value 201811L in c++23"
4646 # endif
4647 
4648 # ifndef __cpp_lib_atomic_flag_test
4649 #   error "__cpp_lib_atomic_flag_test should be defined in c++23"
4650 # endif
4651 # if __cpp_lib_atomic_flag_test != 201907L
4652 #   error "__cpp_lib_atomic_flag_test should have the value 201907L in c++23"
4653 # endif
4654 
4655 # if !defined(_LIBCPP_VERSION)
4656 #   ifndef __cpp_lib_atomic_float
4657 #     error "__cpp_lib_atomic_float should be defined in c++23"
4658 #   endif
4659 #   if __cpp_lib_atomic_float != 201711L
4660 #     error "__cpp_lib_atomic_float should have the value 201711L in c++23"
4661 #   endif
4662 # else // _LIBCPP_VERSION
4663 #   ifdef __cpp_lib_atomic_float
4664 #     error "__cpp_lib_atomic_float should not be defined because it is unimplemented in libc++!"
4665 #   endif
4666 # endif
4667 
4668 # ifndef __cpp_lib_atomic_is_always_lock_free
4669 #   error "__cpp_lib_atomic_is_always_lock_free should be defined in c++23"
4670 # endif
4671 # if __cpp_lib_atomic_is_always_lock_free != 201603L
4672 #   error "__cpp_lib_atomic_is_always_lock_free should have the value 201603L in c++23"
4673 # endif
4674 
4675 # ifndef __cpp_lib_atomic_lock_free_type_aliases
4676 #   error "__cpp_lib_atomic_lock_free_type_aliases should be defined in c++23"
4677 # endif
4678 # if __cpp_lib_atomic_lock_free_type_aliases != 201907L
4679 #   error "__cpp_lib_atomic_lock_free_type_aliases should have the value 201907L in c++23"
4680 # endif
4681 
4682 # ifdef __cpp_lib_atomic_min_max
4683 #   error "__cpp_lib_atomic_min_max should not be defined before c++26"
4684 # endif
4685 
4686 # ifndef __cpp_lib_atomic_ref
4687 #   error "__cpp_lib_atomic_ref should be defined in c++23"
4688 # endif
4689 # if __cpp_lib_atomic_ref != 201806L
4690 #   error "__cpp_lib_atomic_ref should have the value 201806L in c++23"
4691 # endif
4692 
4693 # if !defined(_LIBCPP_VERSION)
4694 #   ifndef __cpp_lib_atomic_shared_ptr
4695 #     error "__cpp_lib_atomic_shared_ptr should be defined in c++23"
4696 #   endif
4697 #   if __cpp_lib_atomic_shared_ptr != 201711L
4698 #     error "__cpp_lib_atomic_shared_ptr should have the value 201711L in c++23"
4699 #   endif
4700 # else // _LIBCPP_VERSION
4701 #   ifdef __cpp_lib_atomic_shared_ptr
4702 #     error "__cpp_lib_atomic_shared_ptr should not be defined because it is unimplemented in libc++!"
4703 #   endif
4704 # endif
4705 
4706 # ifndef __cpp_lib_atomic_value_initialization
4707 #   error "__cpp_lib_atomic_value_initialization should be defined in c++23"
4708 # endif
4709 # if __cpp_lib_atomic_value_initialization != 201911L
4710 #   error "__cpp_lib_atomic_value_initialization should have the value 201911L in c++23"
4711 # endif
4712 
4713 # if !defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC
4714 #   ifndef __cpp_lib_atomic_wait
4715 #     error "__cpp_lib_atomic_wait should be defined in c++23"
4716 #   endif
4717 #   if __cpp_lib_atomic_wait != 201907L
4718 #     error "__cpp_lib_atomic_wait should have the value 201907L in c++23"
4719 #   endif
4720 # else
4721 #   ifdef __cpp_lib_atomic_wait
4722 #     error "__cpp_lib_atomic_wait should not be defined when the requirement '!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC' is not met!"
4723 #   endif
4724 # endif
4725 
4726 # if !defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)
4727 #   ifndef __cpp_lib_barrier
4728 #     error "__cpp_lib_barrier should be defined in c++23"
4729 #   endif
4730 #   if __cpp_lib_barrier != 201907L
4731 #     error "__cpp_lib_barrier should have the value 201907L in c++23"
4732 #   endif
4733 # else
4734 #   ifdef __cpp_lib_barrier
4735 #     error "__cpp_lib_barrier should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)' is not met!"
4736 #   endif
4737 # endif
4738 
4739 # ifndef __cpp_lib_bind_back
4740 #   error "__cpp_lib_bind_back should be defined in c++23"
4741 # endif
4742 # if __cpp_lib_bind_back != 202202L
4743 #   error "__cpp_lib_bind_back should have the value 202202L in c++23"
4744 # endif
4745 
4746 # ifndef __cpp_lib_bind_front
4747 #   error "__cpp_lib_bind_front should be defined in c++23"
4748 # endif
4749 # if __cpp_lib_bind_front != 201907L
4750 #   error "__cpp_lib_bind_front should have the value 201907L in c++23"
4751 # endif
4752 
4753 # ifndef __cpp_lib_bit_cast
4754 #   error "__cpp_lib_bit_cast should be defined in c++23"
4755 # endif
4756 # if __cpp_lib_bit_cast != 201806L
4757 #   error "__cpp_lib_bit_cast should have the value 201806L in c++23"
4758 # endif
4759 
4760 # ifndef __cpp_lib_bitops
4761 #   error "__cpp_lib_bitops should be defined in c++23"
4762 # endif
4763 # if __cpp_lib_bitops != 201907L
4764 #   error "__cpp_lib_bitops should have the value 201907L in c++23"
4765 # endif
4766 
4767 # ifdef __cpp_lib_bitset
4768 #   error "__cpp_lib_bitset should not be defined before c++26"
4769 # endif
4770 
4771 # ifndef __cpp_lib_bool_constant
4772 #   error "__cpp_lib_bool_constant should be defined in c++23"
4773 # endif
4774 # if __cpp_lib_bool_constant != 201505L
4775 #   error "__cpp_lib_bool_constant should have the value 201505L in c++23"
4776 # endif
4777 
4778 # ifndef __cpp_lib_bounded_array_traits
4779 #   error "__cpp_lib_bounded_array_traits should be defined in c++23"
4780 # endif
4781 # if __cpp_lib_bounded_array_traits != 201902L
4782 #   error "__cpp_lib_bounded_array_traits should have the value 201902L in c++23"
4783 # endif
4784 
4785 # ifndef __cpp_lib_boyer_moore_searcher
4786 #   error "__cpp_lib_boyer_moore_searcher should be defined in c++23"
4787 # endif
4788 # if __cpp_lib_boyer_moore_searcher != 201603L
4789 #   error "__cpp_lib_boyer_moore_searcher should have the value 201603L in c++23"
4790 # endif
4791 
4792 # ifndef __cpp_lib_byte
4793 #   error "__cpp_lib_byte should be defined in c++23"
4794 # endif
4795 # if __cpp_lib_byte != 201603L
4796 #   error "__cpp_lib_byte should have the value 201603L in c++23"
4797 # endif
4798 
4799 # ifndef __cpp_lib_byteswap
4800 #   error "__cpp_lib_byteswap should be defined in c++23"
4801 # endif
4802 # if __cpp_lib_byteswap != 202110L
4803 #   error "__cpp_lib_byteswap should have the value 202110L in c++23"
4804 # endif
4805 
4806 # if defined(__cpp_char8_t)
4807 #   ifndef __cpp_lib_char8_t
4808 #     error "__cpp_lib_char8_t should be defined in c++23"
4809 #   endif
4810 #   if __cpp_lib_char8_t != 201907L
4811 #     error "__cpp_lib_char8_t should have the value 201907L in c++23"
4812 #   endif
4813 # else
4814 #   ifdef __cpp_lib_char8_t
4815 #     error "__cpp_lib_char8_t should not be defined when the requirement 'defined(__cpp_char8_t)' is not met!"
4816 #   endif
4817 # endif
4818 
4819 # ifndef __cpp_lib_chrono
4820 #   error "__cpp_lib_chrono should be defined in c++23"
4821 # endif
4822 # if __cpp_lib_chrono != 201611L
4823 #   error "__cpp_lib_chrono should have the value 201611L in c++23"
4824 # endif
4825 
4826 # ifndef __cpp_lib_chrono_udls
4827 #   error "__cpp_lib_chrono_udls should be defined in c++23"
4828 # endif
4829 # if __cpp_lib_chrono_udls != 201304L
4830 #   error "__cpp_lib_chrono_udls should have the value 201304L in c++23"
4831 # endif
4832 
4833 # ifndef __cpp_lib_clamp
4834 #   error "__cpp_lib_clamp should be defined in c++23"
4835 # endif
4836 # if __cpp_lib_clamp != 201603L
4837 #   error "__cpp_lib_clamp should have the value 201603L in c++23"
4838 # endif
4839 
4840 # ifndef __cpp_lib_complex_udls
4841 #   error "__cpp_lib_complex_udls should be defined in c++23"
4842 # endif
4843 # if __cpp_lib_complex_udls != 201309L
4844 #   error "__cpp_lib_complex_udls should have the value 201309L in c++23"
4845 # endif
4846 
4847 # ifndef __cpp_lib_concepts
4848 #   error "__cpp_lib_concepts should be defined in c++23"
4849 # endif
4850 # if __cpp_lib_concepts != 202002L
4851 #   error "__cpp_lib_concepts should have the value 202002L in c++23"
4852 # endif
4853 
4854 # ifndef __cpp_lib_constexpr_algorithms
4855 #   error "__cpp_lib_constexpr_algorithms should be defined in c++23"
4856 # endif
4857 # if __cpp_lib_constexpr_algorithms != 201806L
4858 #   error "__cpp_lib_constexpr_algorithms should have the value 201806L in c++23"
4859 # endif
4860 
4861 # ifndef __cpp_lib_constexpr_bitset
4862 #   error "__cpp_lib_constexpr_bitset should be defined in c++23"
4863 # endif
4864 # if __cpp_lib_constexpr_bitset != 202207L
4865 #   error "__cpp_lib_constexpr_bitset should have the value 202207L in c++23"
4866 # endif
4867 
4868 # ifndef __cpp_lib_constexpr_charconv
4869 #   error "__cpp_lib_constexpr_charconv should be defined in c++23"
4870 # endif
4871 # if __cpp_lib_constexpr_charconv != 202207L
4872 #   error "__cpp_lib_constexpr_charconv should have the value 202207L in c++23"
4873 # endif
4874 
4875 # if !defined(_LIBCPP_VERSION)
4876 #   ifndef __cpp_lib_constexpr_cmath
4877 #     error "__cpp_lib_constexpr_cmath should be defined in c++23"
4878 #   endif
4879 #   if __cpp_lib_constexpr_cmath != 202202L
4880 #     error "__cpp_lib_constexpr_cmath should have the value 202202L in c++23"
4881 #   endif
4882 # else // _LIBCPP_VERSION
4883 #   ifdef __cpp_lib_constexpr_cmath
4884 #     error "__cpp_lib_constexpr_cmath should not be defined because it is unimplemented in libc++!"
4885 #   endif
4886 # endif
4887 
4888 # ifndef __cpp_lib_constexpr_complex
4889 #   error "__cpp_lib_constexpr_complex should be defined in c++23"
4890 # endif
4891 # if __cpp_lib_constexpr_complex != 201711L
4892 #   error "__cpp_lib_constexpr_complex should have the value 201711L in c++23"
4893 # endif
4894 
4895 # ifndef __cpp_lib_constexpr_dynamic_alloc
4896 #   error "__cpp_lib_constexpr_dynamic_alloc should be defined in c++23"
4897 # endif
4898 # if __cpp_lib_constexpr_dynamic_alloc != 201907L
4899 #   error "__cpp_lib_constexpr_dynamic_alloc should have the value 201907L in c++23"
4900 # endif
4901 
4902 # ifndef __cpp_lib_constexpr_functional
4903 #   error "__cpp_lib_constexpr_functional should be defined in c++23"
4904 # endif
4905 # if __cpp_lib_constexpr_functional != 201907L
4906 #   error "__cpp_lib_constexpr_functional should have the value 201907L in c++23"
4907 # endif
4908 
4909 # ifndef __cpp_lib_constexpr_iterator
4910 #   error "__cpp_lib_constexpr_iterator should be defined in c++23"
4911 # endif
4912 # if __cpp_lib_constexpr_iterator != 201811L
4913 #   error "__cpp_lib_constexpr_iterator should have the value 201811L in c++23"
4914 # endif
4915 
4916 # ifndef __cpp_lib_constexpr_memory
4917 #   error "__cpp_lib_constexpr_memory should be defined in c++23"
4918 # endif
4919 # if __cpp_lib_constexpr_memory != 202202L
4920 #   error "__cpp_lib_constexpr_memory should have the value 202202L in c++23"
4921 # endif
4922 
4923 # ifdef __cpp_lib_constexpr_new
4924 #   error "__cpp_lib_constexpr_new should not be defined before c++26"
4925 # endif
4926 
4927 # ifndef __cpp_lib_constexpr_numeric
4928 #   error "__cpp_lib_constexpr_numeric should be defined in c++23"
4929 # endif
4930 # if __cpp_lib_constexpr_numeric != 201911L
4931 #   error "__cpp_lib_constexpr_numeric should have the value 201911L in c++23"
4932 # endif
4933 
4934 # ifndef __cpp_lib_constexpr_string
4935 #   error "__cpp_lib_constexpr_string should be defined in c++23"
4936 # endif
4937 # if __cpp_lib_constexpr_string != 201907L
4938 #   error "__cpp_lib_constexpr_string should have the value 201907L in c++23"
4939 # endif
4940 
4941 # ifndef __cpp_lib_constexpr_string_view
4942 #   error "__cpp_lib_constexpr_string_view should be defined in c++23"
4943 # endif
4944 # if __cpp_lib_constexpr_string_view != 201811L
4945 #   error "__cpp_lib_constexpr_string_view should have the value 201811L in c++23"
4946 # endif
4947 
4948 # ifndef __cpp_lib_constexpr_tuple
4949 #   error "__cpp_lib_constexpr_tuple should be defined in c++23"
4950 # endif
4951 # if __cpp_lib_constexpr_tuple != 201811L
4952 #   error "__cpp_lib_constexpr_tuple should have the value 201811L in c++23"
4953 # endif
4954 
4955 # ifndef __cpp_lib_constexpr_typeinfo
4956 #   error "__cpp_lib_constexpr_typeinfo should be defined in c++23"
4957 # endif
4958 # if __cpp_lib_constexpr_typeinfo != 202106L
4959 #   error "__cpp_lib_constexpr_typeinfo should have the value 202106L in c++23"
4960 # endif
4961 
4962 # ifndef __cpp_lib_constexpr_utility
4963 #   error "__cpp_lib_constexpr_utility should be defined in c++23"
4964 # endif
4965 # if __cpp_lib_constexpr_utility != 201811L
4966 #   error "__cpp_lib_constexpr_utility should have the value 201811L in c++23"
4967 # endif
4968 
4969 # ifndef __cpp_lib_constexpr_vector
4970 #   error "__cpp_lib_constexpr_vector should be defined in c++23"
4971 # endif
4972 # if __cpp_lib_constexpr_vector != 201907L
4973 #   error "__cpp_lib_constexpr_vector should have the value 201907L in c++23"
4974 # endif
4975 
4976 # ifdef __cpp_lib_constrained_equality
4977 #   error "__cpp_lib_constrained_equality should not be defined before c++26"
4978 # endif
4979 
4980 # ifndef __cpp_lib_containers_ranges
4981 #   error "__cpp_lib_containers_ranges should be defined in c++23"
4982 # endif
4983 # if __cpp_lib_containers_ranges != 202202L
4984 #   error "__cpp_lib_containers_ranges should have the value 202202L in c++23"
4985 # endif
4986 
4987 # ifdef __cpp_lib_copyable_function
4988 #   error "__cpp_lib_copyable_function should not be defined before c++26"
4989 # endif
4990 
4991 # ifndef __cpp_lib_coroutine
4992 #   error "__cpp_lib_coroutine should be defined in c++23"
4993 # endif
4994 # if __cpp_lib_coroutine != 201902L
4995 #   error "__cpp_lib_coroutine should have the value 201902L in c++23"
4996 # endif
4997 
4998 # ifdef __cpp_lib_debugging
4999 #   error "__cpp_lib_debugging should not be defined before c++26"
5000 # endif
5001 
5002 # ifdef __cpp_lib_default_template_type_for_algorithm_values
5003 #   error "__cpp_lib_default_template_type_for_algorithm_values should not be defined before c++26"
5004 # endif
5005 
5006 # if TEST_STD_VER > 17 && defined(__cpp_impl_destroying_delete) && __cpp_impl_destroying_delete >= 201806L
5007 #   ifndef __cpp_lib_destroying_delete
5008 #     error "__cpp_lib_destroying_delete should be defined in c++23"
5009 #   endif
5010 #   if __cpp_lib_destroying_delete != 201806L
5011 #     error "__cpp_lib_destroying_delete should have the value 201806L in c++23"
5012 #   endif
5013 # else
5014 #   ifdef __cpp_lib_destroying_delete
5015 #     error "__cpp_lib_destroying_delete should not be defined when the requirement 'TEST_STD_VER > 17 && defined(__cpp_impl_destroying_delete) && __cpp_impl_destroying_delete >= 201806L' is not met!"
5016 #   endif
5017 # endif
5018 
5019 # ifndef __cpp_lib_enable_shared_from_this
5020 #   error "__cpp_lib_enable_shared_from_this should be defined in c++23"
5021 # endif
5022 # if __cpp_lib_enable_shared_from_this != 201603L
5023 #   error "__cpp_lib_enable_shared_from_this should have the value 201603L in c++23"
5024 # endif
5025 
5026 # ifndef __cpp_lib_endian
5027 #   error "__cpp_lib_endian should be defined in c++23"
5028 # endif
5029 # if __cpp_lib_endian != 201907L
5030 #   error "__cpp_lib_endian should have the value 201907L in c++23"
5031 # endif
5032 
5033 # ifndef __cpp_lib_erase_if
5034 #   error "__cpp_lib_erase_if should be defined in c++23"
5035 # endif
5036 # if __cpp_lib_erase_if != 202002L
5037 #   error "__cpp_lib_erase_if should have the value 202002L in c++23"
5038 # endif
5039 
5040 # ifndef __cpp_lib_exchange_function
5041 #   error "__cpp_lib_exchange_function should be defined in c++23"
5042 # endif
5043 # if __cpp_lib_exchange_function != 201304L
5044 #   error "__cpp_lib_exchange_function should have the value 201304L in c++23"
5045 # endif
5046 
5047 # if !defined(_LIBCPP_VERSION)
5048 #   ifndef __cpp_lib_execution
5049 #     error "__cpp_lib_execution should be defined in c++23"
5050 #   endif
5051 #   if __cpp_lib_execution != 201902L
5052 #     error "__cpp_lib_execution should have the value 201902L in c++23"
5053 #   endif
5054 # else // _LIBCPP_VERSION
5055 #   ifdef __cpp_lib_execution
5056 #     error "__cpp_lib_execution should not be defined because it is unimplemented in libc++!"
5057 #   endif
5058 # endif
5059 
5060 # ifndef __cpp_lib_expected
5061 #   error "__cpp_lib_expected should be defined in c++23"
5062 # endif
5063 # if __cpp_lib_expected != 202211L
5064 #   error "__cpp_lib_expected should have the value 202211L in c++23"
5065 # endif
5066 
5067 # if !defined(_LIBCPP_VERSION) || (!defined(_LIBCPP_HAS_NO_FILESYSTEM) && _LIBCPP_AVAILABILITY_HAS_FILESYSTEM_LIBRARY)
5068 #   ifndef __cpp_lib_filesystem
5069 #     error "__cpp_lib_filesystem should be defined in c++23"
5070 #   endif
5071 #   if __cpp_lib_filesystem != 201703L
5072 #     error "__cpp_lib_filesystem should have the value 201703L in c++23"
5073 #   endif
5074 # else
5075 #   ifdef __cpp_lib_filesystem
5076 #     error "__cpp_lib_filesystem should not be defined when the requirement '!defined(_LIBCPP_VERSION) || (!defined(_LIBCPP_HAS_NO_FILESYSTEM) && _LIBCPP_AVAILABILITY_HAS_FILESYSTEM_LIBRARY)' is not met!"
5077 #   endif
5078 # endif
5079 
5080 # ifndef __cpp_lib_format
5081 #   error "__cpp_lib_format should be defined in c++23"
5082 # endif
5083 # if __cpp_lib_format != 202110L
5084 #   error "__cpp_lib_format should have the value 202110L in c++23"
5085 # endif
5086 
5087 # ifdef __cpp_lib_format_path
5088 #   error "__cpp_lib_format_path should not be defined before c++26"
5089 # endif
5090 
5091 # ifndef __cpp_lib_format_ranges
5092 #   error "__cpp_lib_format_ranges should be defined in c++23"
5093 # endif
5094 # if __cpp_lib_format_ranges != 202207L
5095 #   error "__cpp_lib_format_ranges should have the value 202207L in c++23"
5096 # endif
5097 
5098 # ifndef __cpp_lib_format_uchar
5099 #   error "__cpp_lib_format_uchar should be defined in c++23"
5100 # endif
5101 # if __cpp_lib_format_uchar != 202311L
5102 #   error "__cpp_lib_format_uchar should have the value 202311L in c++23"
5103 # endif
5104 
5105 # if !defined(_LIBCPP_VERSION)
5106 #   ifndef __cpp_lib_formatters
5107 #     error "__cpp_lib_formatters should be defined in c++23"
5108 #   endif
5109 #   if __cpp_lib_formatters != 202302L
5110 #     error "__cpp_lib_formatters should have the value 202302L in c++23"
5111 #   endif
5112 # else // _LIBCPP_VERSION
5113 #   ifdef __cpp_lib_formatters
5114 #     error "__cpp_lib_formatters should not be defined because it is unimplemented in libc++!"
5115 #   endif
5116 # endif
5117 
5118 # ifndef __cpp_lib_forward_like
5119 #   error "__cpp_lib_forward_like should be defined in c++23"
5120 # endif
5121 # if __cpp_lib_forward_like != 202207L
5122 #   error "__cpp_lib_forward_like should have the value 202207L in c++23"
5123 # endif
5124 
5125 # ifdef __cpp_lib_freestanding_algorithm
5126 #   error "__cpp_lib_freestanding_algorithm should not be defined before c++26"
5127 # endif
5128 
5129 # ifdef __cpp_lib_freestanding_array
5130 #   error "__cpp_lib_freestanding_array should not be defined before c++26"
5131 # endif
5132 
5133 # ifdef __cpp_lib_freestanding_cstring
5134 #   error "__cpp_lib_freestanding_cstring should not be defined before c++26"
5135 # endif
5136 
5137 # ifdef __cpp_lib_freestanding_expected
5138 #   error "__cpp_lib_freestanding_expected should not be defined before c++26"
5139 # endif
5140 
5141 # ifdef __cpp_lib_freestanding_mdspan
5142 #   error "__cpp_lib_freestanding_mdspan should not be defined before c++26"
5143 # endif
5144 
5145 # ifdef __cpp_lib_freestanding_optional
5146 #   error "__cpp_lib_freestanding_optional should not be defined before c++26"
5147 # endif
5148 
5149 # ifdef __cpp_lib_freestanding_string_view
5150 #   error "__cpp_lib_freestanding_string_view should not be defined before c++26"
5151 # endif
5152 
5153 # ifdef __cpp_lib_freestanding_variant
5154 #   error "__cpp_lib_freestanding_variant should not be defined before c++26"
5155 # endif
5156 
5157 # ifdef __cpp_lib_fstream_native_handle
5158 #   error "__cpp_lib_fstream_native_handle should not be defined before c++26"
5159 # endif
5160 
5161 # ifdef __cpp_lib_function_ref
5162 #   error "__cpp_lib_function_ref should not be defined before c++26"
5163 # endif
5164 
5165 # ifndef __cpp_lib_gcd_lcm
5166 #   error "__cpp_lib_gcd_lcm should be defined in c++23"
5167 # endif
5168 # if __cpp_lib_gcd_lcm != 201606L
5169 #   error "__cpp_lib_gcd_lcm should have the value 201606L in c++23"
5170 # endif
5171 
5172 # ifdef __cpp_lib_generate_random
5173 #   error "__cpp_lib_generate_random should not be defined before c++26"
5174 # endif
5175 
5176 # ifndef __cpp_lib_generic_associative_lookup
5177 #   error "__cpp_lib_generic_associative_lookup should be defined in c++23"
5178 # endif
5179 # if __cpp_lib_generic_associative_lookup != 201304L
5180 #   error "__cpp_lib_generic_associative_lookup should have the value 201304L in c++23"
5181 # endif
5182 
5183 # ifndef __cpp_lib_generic_unordered_lookup
5184 #   error "__cpp_lib_generic_unordered_lookup should be defined in c++23"
5185 # endif
5186 # if __cpp_lib_generic_unordered_lookup != 201811L
5187 #   error "__cpp_lib_generic_unordered_lookup should have the value 201811L in c++23"
5188 # endif
5189 
5190 # if !defined(_LIBCPP_VERSION) || (defined(__GCC_DESTRUCTIVE_SIZE) && defined(__GCC_CONSTRUCTIVE_SIZE))
5191 #   ifndef __cpp_lib_hardware_interference_size
5192 #     error "__cpp_lib_hardware_interference_size should be defined in c++23"
5193 #   endif
5194 #   if __cpp_lib_hardware_interference_size != 201703L
5195 #     error "__cpp_lib_hardware_interference_size should have the value 201703L in c++23"
5196 #   endif
5197 # else
5198 #   ifdef __cpp_lib_hardware_interference_size
5199 #     error "__cpp_lib_hardware_interference_size should not be defined when the requirement '!defined(_LIBCPP_VERSION) || (defined(__GCC_DESTRUCTIVE_SIZE) && defined(__GCC_CONSTRUCTIVE_SIZE))' is not met!"
5200 #   endif
5201 # endif
5202 
5203 # ifndef __cpp_lib_has_unique_object_representations
5204 #   error "__cpp_lib_has_unique_object_representations should be defined in c++23"
5205 # endif
5206 # if __cpp_lib_has_unique_object_representations != 201606L
5207 #   error "__cpp_lib_has_unique_object_representations should have the value 201606L in c++23"
5208 # endif
5209 
5210 # ifdef __cpp_lib_hazard_pointer
5211 #   error "__cpp_lib_hazard_pointer should not be defined before c++26"
5212 # endif
5213 
5214 # ifndef __cpp_lib_hypot
5215 #   error "__cpp_lib_hypot should be defined in c++23"
5216 # endif
5217 # if __cpp_lib_hypot != 201603L
5218 #   error "__cpp_lib_hypot should have the value 201603L in c++23"
5219 # endif
5220 
5221 # ifndef __cpp_lib_incomplete_container_elements
5222 #   error "__cpp_lib_incomplete_container_elements should be defined in c++23"
5223 # endif
5224 # if __cpp_lib_incomplete_container_elements != 201505L
5225 #   error "__cpp_lib_incomplete_container_elements should have the value 201505L in c++23"
5226 # endif
5227 
5228 # ifdef __cpp_lib_inplace_vector
5229 #   error "__cpp_lib_inplace_vector should not be defined before c++26"
5230 # endif
5231 
5232 # ifndef __cpp_lib_int_pow2
5233 #   error "__cpp_lib_int_pow2 should be defined in c++23"
5234 # endif
5235 # if __cpp_lib_int_pow2 != 202002L
5236 #   error "__cpp_lib_int_pow2 should have the value 202002L in c++23"
5237 # endif
5238 
5239 # ifndef __cpp_lib_integer_comparison_functions
5240 #   error "__cpp_lib_integer_comparison_functions should be defined in c++23"
5241 # endif
5242 # if __cpp_lib_integer_comparison_functions != 202002L
5243 #   error "__cpp_lib_integer_comparison_functions should have the value 202002L in c++23"
5244 # endif
5245 
5246 # ifndef __cpp_lib_integer_sequence
5247 #   error "__cpp_lib_integer_sequence should be defined in c++23"
5248 # endif
5249 # if __cpp_lib_integer_sequence != 201304L
5250 #   error "__cpp_lib_integer_sequence should have the value 201304L in c++23"
5251 # endif
5252 
5253 # ifndef __cpp_lib_integral_constant_callable
5254 #   error "__cpp_lib_integral_constant_callable should be defined in c++23"
5255 # endif
5256 # if __cpp_lib_integral_constant_callable != 201304L
5257 #   error "__cpp_lib_integral_constant_callable should have the value 201304L in c++23"
5258 # endif
5259 
5260 # ifndef __cpp_lib_interpolate
5261 #   error "__cpp_lib_interpolate should be defined in c++23"
5262 # endif
5263 # if __cpp_lib_interpolate != 201902L
5264 #   error "__cpp_lib_interpolate should have the value 201902L in c++23"
5265 # endif
5266 
5267 # ifndef __cpp_lib_invoke
5268 #   error "__cpp_lib_invoke should be defined in c++23"
5269 # endif
5270 # if __cpp_lib_invoke != 201411L
5271 #   error "__cpp_lib_invoke should have the value 201411L in c++23"
5272 # endif
5273 
5274 # ifndef __cpp_lib_invoke_r
5275 #   error "__cpp_lib_invoke_r should be defined in c++23"
5276 # endif
5277 # if __cpp_lib_invoke_r != 202106L
5278 #   error "__cpp_lib_invoke_r should have the value 202106L in c++23"
5279 # endif
5280 
5281 # ifndef __cpp_lib_ios_noreplace
5282 #   error "__cpp_lib_ios_noreplace should be defined in c++23"
5283 # endif
5284 # if __cpp_lib_ios_noreplace != 202207L
5285 #   error "__cpp_lib_ios_noreplace should have the value 202207L in c++23"
5286 # endif
5287 
5288 # ifndef __cpp_lib_is_aggregate
5289 #   error "__cpp_lib_is_aggregate should be defined in c++23"
5290 # endif
5291 # if __cpp_lib_is_aggregate != 201703L
5292 #   error "__cpp_lib_is_aggregate should have the value 201703L in c++23"
5293 # endif
5294 
5295 # ifndef __cpp_lib_is_constant_evaluated
5296 #   error "__cpp_lib_is_constant_evaluated should be defined in c++23"
5297 # endif
5298 # if __cpp_lib_is_constant_evaluated != 201811L
5299 #   error "__cpp_lib_is_constant_evaluated should have the value 201811L in c++23"
5300 # endif
5301 
5302 # ifndef __cpp_lib_is_final
5303 #   error "__cpp_lib_is_final should be defined in c++23"
5304 # endif
5305 # if __cpp_lib_is_final != 201402L
5306 #   error "__cpp_lib_is_final should have the value 201402L in c++23"
5307 # endif
5308 
5309 # ifndef __cpp_lib_is_invocable
5310 #   error "__cpp_lib_is_invocable should be defined in c++23"
5311 # endif
5312 # if __cpp_lib_is_invocable != 201703L
5313 #   error "__cpp_lib_is_invocable should have the value 201703L in c++23"
5314 # endif
5315 
5316 # if !defined(_LIBCPP_VERSION)
5317 #   ifndef __cpp_lib_is_layout_compatible
5318 #     error "__cpp_lib_is_layout_compatible should be defined in c++23"
5319 #   endif
5320 #   if __cpp_lib_is_layout_compatible != 201907L
5321 #     error "__cpp_lib_is_layout_compatible should have the value 201907L in c++23"
5322 #   endif
5323 # else // _LIBCPP_VERSION
5324 #   ifdef __cpp_lib_is_layout_compatible
5325 #     error "__cpp_lib_is_layout_compatible should not be defined because it is unimplemented in libc++!"
5326 #   endif
5327 # endif
5328 
5329 # ifndef __cpp_lib_is_nothrow_convertible
5330 #   error "__cpp_lib_is_nothrow_convertible should be defined in c++23"
5331 # endif
5332 # if __cpp_lib_is_nothrow_convertible != 201806L
5333 #   error "__cpp_lib_is_nothrow_convertible should have the value 201806L in c++23"
5334 # endif
5335 
5336 # ifndef __cpp_lib_is_null_pointer
5337 #   error "__cpp_lib_is_null_pointer should be defined in c++23"
5338 # endif
5339 # if __cpp_lib_is_null_pointer != 201309L
5340 #   error "__cpp_lib_is_null_pointer should have the value 201309L in c++23"
5341 # endif
5342 
5343 # if !defined(_LIBCPP_VERSION)
5344 #   ifndef __cpp_lib_is_pointer_interconvertible
5345 #     error "__cpp_lib_is_pointer_interconvertible should be defined in c++23"
5346 #   endif
5347 #   if __cpp_lib_is_pointer_interconvertible != 201907L
5348 #     error "__cpp_lib_is_pointer_interconvertible should have the value 201907L in c++23"
5349 #   endif
5350 # else // _LIBCPP_VERSION
5351 #   ifdef __cpp_lib_is_pointer_interconvertible
5352 #     error "__cpp_lib_is_pointer_interconvertible should not be defined because it is unimplemented in libc++!"
5353 #   endif
5354 # endif
5355 
5356 # ifndef __cpp_lib_is_scoped_enum
5357 #   error "__cpp_lib_is_scoped_enum should be defined in c++23"
5358 # endif
5359 # if __cpp_lib_is_scoped_enum != 202011L
5360 #   error "__cpp_lib_is_scoped_enum should have the value 202011L in c++23"
5361 # endif
5362 
5363 # ifndef __cpp_lib_is_swappable
5364 #   error "__cpp_lib_is_swappable should be defined in c++23"
5365 # endif
5366 # if __cpp_lib_is_swappable != 201603L
5367 #   error "__cpp_lib_is_swappable should have the value 201603L in c++23"
5368 # endif
5369 
5370 # ifdef __cpp_lib_is_virtual_base_of
5371 #   error "__cpp_lib_is_virtual_base_of should not be defined before c++26"
5372 # endif
5373 
5374 # ifdef __cpp_lib_is_within_lifetime
5375 #   error "__cpp_lib_is_within_lifetime should not be defined before c++26"
5376 # endif
5377 
5378 # if !defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)
5379 #   ifndef __cpp_lib_jthread
5380 #     error "__cpp_lib_jthread should be defined in c++23"
5381 #   endif
5382 #   if __cpp_lib_jthread != 201911L
5383 #     error "__cpp_lib_jthread should have the value 201911L in c++23"
5384 #   endif
5385 # else
5386 #   ifdef __cpp_lib_jthread
5387 #     error "__cpp_lib_jthread should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)' is not met!"
5388 #   endif
5389 # endif
5390 
5391 # if !defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)
5392 #   ifndef __cpp_lib_latch
5393 #     error "__cpp_lib_latch should be defined in c++23"
5394 #   endif
5395 #   if __cpp_lib_latch != 201907L
5396 #     error "__cpp_lib_latch should have the value 201907L in c++23"
5397 #   endif
5398 # else
5399 #   ifdef __cpp_lib_latch
5400 #     error "__cpp_lib_latch should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)' is not met!"
5401 #   endif
5402 # endif
5403 
5404 # ifndef __cpp_lib_launder
5405 #   error "__cpp_lib_launder should be defined in c++23"
5406 # endif
5407 # if __cpp_lib_launder != 201606L
5408 #   error "__cpp_lib_launder should have the value 201606L in c++23"
5409 # endif
5410 
5411 # ifdef __cpp_lib_linalg
5412 #   error "__cpp_lib_linalg should not be defined before c++26"
5413 # endif
5414 
5415 # ifndef __cpp_lib_list_remove_return_type
5416 #   error "__cpp_lib_list_remove_return_type should be defined in c++23"
5417 # endif
5418 # if __cpp_lib_list_remove_return_type != 201806L
5419 #   error "__cpp_lib_list_remove_return_type should have the value 201806L in c++23"
5420 # endif
5421 
5422 # ifndef __cpp_lib_logical_traits
5423 #   error "__cpp_lib_logical_traits should be defined in c++23"
5424 # endif
5425 # if __cpp_lib_logical_traits != 201510L
5426 #   error "__cpp_lib_logical_traits should have the value 201510L in c++23"
5427 # endif
5428 
5429 # ifndef __cpp_lib_make_from_tuple
5430 #   error "__cpp_lib_make_from_tuple should be defined in c++23"
5431 # endif
5432 # if __cpp_lib_make_from_tuple != 201606L
5433 #   error "__cpp_lib_make_from_tuple should have the value 201606L in c++23"
5434 # endif
5435 
5436 # ifndef __cpp_lib_make_reverse_iterator
5437 #   error "__cpp_lib_make_reverse_iterator should be defined in c++23"
5438 # endif
5439 # if __cpp_lib_make_reverse_iterator != 201402L
5440 #   error "__cpp_lib_make_reverse_iterator should have the value 201402L in c++23"
5441 # endif
5442 
5443 # ifndef __cpp_lib_make_unique
5444 #   error "__cpp_lib_make_unique should be defined in c++23"
5445 # endif
5446 # if __cpp_lib_make_unique != 201304L
5447 #   error "__cpp_lib_make_unique should have the value 201304L in c++23"
5448 # endif
5449 
5450 # ifndef __cpp_lib_map_try_emplace
5451 #   error "__cpp_lib_map_try_emplace should be defined in c++23"
5452 # endif
5453 # if __cpp_lib_map_try_emplace != 201411L
5454 #   error "__cpp_lib_map_try_emplace should have the value 201411L in c++23"
5455 # endif
5456 
5457 # ifndef __cpp_lib_math_constants
5458 #   error "__cpp_lib_math_constants should be defined in c++23"
5459 # endif
5460 # if __cpp_lib_math_constants != 201907L
5461 #   error "__cpp_lib_math_constants should have the value 201907L in c++23"
5462 # endif
5463 
5464 # if !defined(_LIBCPP_VERSION)
5465 #   ifndef __cpp_lib_math_special_functions
5466 #     error "__cpp_lib_math_special_functions should be defined in c++23"
5467 #   endif
5468 #   if __cpp_lib_math_special_functions != 201603L
5469 #     error "__cpp_lib_math_special_functions should have the value 201603L in c++23"
5470 #   endif
5471 # else // _LIBCPP_VERSION
5472 #   ifdef __cpp_lib_math_special_functions
5473 #     error "__cpp_lib_math_special_functions should not be defined because it is unimplemented in libc++!"
5474 #   endif
5475 # endif
5476 
5477 # ifndef __cpp_lib_mdspan
5478 #   error "__cpp_lib_mdspan should be defined in c++23"
5479 # endif
5480 # if __cpp_lib_mdspan != 202207L
5481 #   error "__cpp_lib_mdspan should have the value 202207L in c++23"
5482 # endif
5483 
5484 # if !defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_PMR
5485 #   ifndef __cpp_lib_memory_resource
5486 #     error "__cpp_lib_memory_resource should be defined in c++23"
5487 #   endif
5488 #   if __cpp_lib_memory_resource != 201603L
5489 #     error "__cpp_lib_memory_resource should have the value 201603L in c++23"
5490 #   endif
5491 # else
5492 #   ifdef __cpp_lib_memory_resource
5493 #     error "__cpp_lib_memory_resource should not be defined when the requirement '!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_PMR' is not met!"
5494 #   endif
5495 # endif
5496 
5497 # ifndef __cpp_lib_modules
5498 #   error "__cpp_lib_modules should be defined in c++23"
5499 # endif
5500 # if __cpp_lib_modules != 202207L
5501 #   error "__cpp_lib_modules should have the value 202207L in c++23"
5502 # endif
5503 
5504 # ifndef __cpp_lib_move_iterator_concept
5505 #   error "__cpp_lib_move_iterator_concept should be defined in c++23"
5506 # endif
5507 # if __cpp_lib_move_iterator_concept != 202207L
5508 #   error "__cpp_lib_move_iterator_concept should have the value 202207L in c++23"
5509 # endif
5510 
5511 # if !defined(_LIBCPP_VERSION)
5512 #   ifndef __cpp_lib_move_only_function
5513 #     error "__cpp_lib_move_only_function should be defined in c++23"
5514 #   endif
5515 #   if __cpp_lib_move_only_function != 202110L
5516 #     error "__cpp_lib_move_only_function should have the value 202110L in c++23"
5517 #   endif
5518 # else // _LIBCPP_VERSION
5519 #   ifdef __cpp_lib_move_only_function
5520 #     error "__cpp_lib_move_only_function should not be defined because it is unimplemented in libc++!"
5521 #   endif
5522 # endif
5523 
5524 # ifndef __cpp_lib_node_extract
5525 #   error "__cpp_lib_node_extract should be defined in c++23"
5526 # endif
5527 # if __cpp_lib_node_extract != 201606L
5528 #   error "__cpp_lib_node_extract should have the value 201606L in c++23"
5529 # endif
5530 
5531 # ifndef __cpp_lib_nonmember_container_access
5532 #   error "__cpp_lib_nonmember_container_access should be defined in c++23"
5533 # endif
5534 # if __cpp_lib_nonmember_container_access != 201411L
5535 #   error "__cpp_lib_nonmember_container_access should have the value 201411L in c++23"
5536 # endif
5537 
5538 # ifndef __cpp_lib_not_fn
5539 #   error "__cpp_lib_not_fn should be defined in c++23"
5540 # endif
5541 # if __cpp_lib_not_fn != 201603L
5542 #   error "__cpp_lib_not_fn should have the value 201603L in c++23"
5543 # endif
5544 
5545 # ifndef __cpp_lib_null_iterators
5546 #   error "__cpp_lib_null_iterators should be defined in c++23"
5547 # endif
5548 # if __cpp_lib_null_iterators != 201304L
5549 #   error "__cpp_lib_null_iterators should have the value 201304L in c++23"
5550 # endif
5551 
5552 # ifndef __cpp_lib_optional
5553 #   error "__cpp_lib_optional should be defined in c++23"
5554 # endif
5555 # if __cpp_lib_optional != 202110L
5556 #   error "__cpp_lib_optional should have the value 202110L in c++23"
5557 # endif
5558 
5559 # ifdef __cpp_lib_optional_range_support
5560 #   error "__cpp_lib_optional_range_support should not be defined before c++26"
5561 # endif
5562 
5563 # ifndef __cpp_lib_out_ptr
5564 #   error "__cpp_lib_out_ptr should be defined in c++23"
5565 # endif
5566 # if __cpp_lib_out_ptr != 202106L
5567 #   error "__cpp_lib_out_ptr should have the value 202106L in c++23"
5568 # endif
5569 
5570 # if !defined(_LIBCPP_VERSION)
5571 #   ifndef __cpp_lib_parallel_algorithm
5572 #     error "__cpp_lib_parallel_algorithm should be defined in c++23"
5573 #   endif
5574 #   if __cpp_lib_parallel_algorithm != 201603L
5575 #     error "__cpp_lib_parallel_algorithm should have the value 201603L in c++23"
5576 #   endif
5577 # else // _LIBCPP_VERSION
5578 #   ifdef __cpp_lib_parallel_algorithm
5579 #     error "__cpp_lib_parallel_algorithm should not be defined because it is unimplemented in libc++!"
5580 #   endif
5581 # endif
5582 
5583 # ifdef __cpp_lib_philox_engine
5584 #   error "__cpp_lib_philox_engine should not be defined before c++26"
5585 # endif
5586 
5587 # if !defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_PMR
5588 #   ifndef __cpp_lib_polymorphic_allocator
5589 #     error "__cpp_lib_polymorphic_allocator should be defined in c++23"
5590 #   endif
5591 #   if __cpp_lib_polymorphic_allocator != 201902L
5592 #     error "__cpp_lib_polymorphic_allocator should have the value 201902L in c++23"
5593 #   endif
5594 # else
5595 #   ifdef __cpp_lib_polymorphic_allocator
5596 #     error "__cpp_lib_polymorphic_allocator should not be defined when the requirement '!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_PMR' is not met!"
5597 #   endif
5598 # endif
5599 
5600 # ifndef __cpp_lib_print
5601 #   error "__cpp_lib_print should be defined in c++23"
5602 # endif
5603 # if __cpp_lib_print != 202207L
5604 #   error "__cpp_lib_print should have the value 202207L in c++23"
5605 # endif
5606 
5607 # if !defined(_LIBCPP_VERSION) || !defined(_LIBCPP_HAS_NO_LOCALIZATION)
5608 #   ifndef __cpp_lib_quoted_string_io
5609 #     error "__cpp_lib_quoted_string_io should be defined in c++23"
5610 #   endif
5611 #   if __cpp_lib_quoted_string_io != 201304L
5612 #     error "__cpp_lib_quoted_string_io should have the value 201304L in c++23"
5613 #   endif
5614 # else
5615 #   ifdef __cpp_lib_quoted_string_io
5616 #     error "__cpp_lib_quoted_string_io should not be defined when the requirement '!defined(_LIBCPP_VERSION) || !defined(_LIBCPP_HAS_NO_LOCALIZATION)' is not met!"
5617 #   endif
5618 # endif
5619 
5620 # ifndef __cpp_lib_ranges
5621 #   error "__cpp_lib_ranges should be defined in c++23"
5622 # endif
5623 # if __cpp_lib_ranges != 202406L
5624 #   error "__cpp_lib_ranges should have the value 202406L in c++23"
5625 # endif
5626 
5627 # if !defined(_LIBCPP_VERSION)
5628 #   ifndef __cpp_lib_ranges_as_const
5629 #     error "__cpp_lib_ranges_as_const should be defined in c++23"
5630 #   endif
5631 #   if __cpp_lib_ranges_as_const != 202207L
5632 #     error "__cpp_lib_ranges_as_const should have the value 202207L in c++23"
5633 #   endif
5634 # else // _LIBCPP_VERSION
5635 #   ifdef __cpp_lib_ranges_as_const
5636 #     error "__cpp_lib_ranges_as_const should not be defined because it is unimplemented in libc++!"
5637 #   endif
5638 # endif
5639 
5640 # ifndef __cpp_lib_ranges_as_rvalue
5641 #   error "__cpp_lib_ranges_as_rvalue should be defined in c++23"
5642 # endif
5643 # if __cpp_lib_ranges_as_rvalue != 202207L
5644 #   error "__cpp_lib_ranges_as_rvalue should have the value 202207L in c++23"
5645 # endif
5646 
5647 # if !defined(_LIBCPP_VERSION)
5648 #   ifndef __cpp_lib_ranges_chunk
5649 #     error "__cpp_lib_ranges_chunk should be defined in c++23"
5650 #   endif
5651 #   if __cpp_lib_ranges_chunk != 202202L
5652 #     error "__cpp_lib_ranges_chunk should have the value 202202L in c++23"
5653 #   endif
5654 # else // _LIBCPP_VERSION
5655 #   ifdef __cpp_lib_ranges_chunk
5656 #     error "__cpp_lib_ranges_chunk should not be defined because it is unimplemented in libc++!"
5657 #   endif
5658 # endif
5659 
5660 # ifndef __cpp_lib_ranges_chunk_by
5661 #   error "__cpp_lib_ranges_chunk_by should be defined in c++23"
5662 # endif
5663 # if __cpp_lib_ranges_chunk_by != 202202L
5664 #   error "__cpp_lib_ranges_chunk_by should have the value 202202L in c++23"
5665 # endif
5666 
5667 # ifdef __cpp_lib_ranges_concat
5668 #   error "__cpp_lib_ranges_concat should not be defined before c++26"
5669 # endif
5670 
5671 # ifndef __cpp_lib_ranges_contains
5672 #   error "__cpp_lib_ranges_contains should be defined in c++23"
5673 # endif
5674 # if __cpp_lib_ranges_contains != 202207L
5675 #   error "__cpp_lib_ranges_contains should have the value 202207L in c++23"
5676 # endif
5677 
5678 # ifndef __cpp_lib_ranges_find_last
5679 #   error "__cpp_lib_ranges_find_last should be defined in c++23"
5680 # endif
5681 # if __cpp_lib_ranges_find_last != 202207L
5682 #   error "__cpp_lib_ranges_find_last should have the value 202207L in c++23"
5683 # endif
5684 
5685 # if !defined(_LIBCPP_VERSION)
5686 #   ifndef __cpp_lib_ranges_iota
5687 #     error "__cpp_lib_ranges_iota should be defined in c++23"
5688 #   endif
5689 #   if __cpp_lib_ranges_iota != 202202L
5690 #     error "__cpp_lib_ranges_iota should have the value 202202L in c++23"
5691 #   endif
5692 # else // _LIBCPP_VERSION
5693 #   ifdef __cpp_lib_ranges_iota
5694 #     error "__cpp_lib_ranges_iota should not be defined because it is unimplemented in libc++!"
5695 #   endif
5696 # endif
5697 
5698 # if !defined(_LIBCPP_VERSION)
5699 #   ifndef __cpp_lib_ranges_join_with
5700 #     error "__cpp_lib_ranges_join_with should be defined in c++23"
5701 #   endif
5702 #   if __cpp_lib_ranges_join_with != 202202L
5703 #     error "__cpp_lib_ranges_join_with should have the value 202202L in c++23"
5704 #   endif
5705 # else // _LIBCPP_VERSION
5706 #   ifdef __cpp_lib_ranges_join_with
5707 #     error "__cpp_lib_ranges_join_with should not be defined because it is unimplemented in libc++!"
5708 #   endif
5709 # endif
5710 
5711 # ifndef __cpp_lib_ranges_repeat
5712 #   error "__cpp_lib_ranges_repeat should be defined in c++23"
5713 # endif
5714 # if __cpp_lib_ranges_repeat != 202207L
5715 #   error "__cpp_lib_ranges_repeat should have the value 202207L in c++23"
5716 # endif
5717 
5718 # if !defined(_LIBCPP_VERSION)
5719 #   ifndef __cpp_lib_ranges_slide
5720 #     error "__cpp_lib_ranges_slide should be defined in c++23"
5721 #   endif
5722 #   if __cpp_lib_ranges_slide != 202202L
5723 #     error "__cpp_lib_ranges_slide should have the value 202202L in c++23"
5724 #   endif
5725 # else // _LIBCPP_VERSION
5726 #   ifdef __cpp_lib_ranges_slide
5727 #     error "__cpp_lib_ranges_slide should not be defined because it is unimplemented in libc++!"
5728 #   endif
5729 # endif
5730 
5731 # ifndef __cpp_lib_ranges_starts_ends_with
5732 #   error "__cpp_lib_ranges_starts_ends_with should be defined in c++23"
5733 # endif
5734 # if __cpp_lib_ranges_starts_ends_with != 202106L
5735 #   error "__cpp_lib_ranges_starts_ends_with should have the value 202106L in c++23"
5736 # endif
5737 
5738 # ifndef __cpp_lib_ranges_to_container
5739 #   error "__cpp_lib_ranges_to_container should be defined in c++23"
5740 # endif
5741 # if __cpp_lib_ranges_to_container != 202202L
5742 #   error "__cpp_lib_ranges_to_container should have the value 202202L in c++23"
5743 # endif
5744 
5745 # if !defined(_LIBCPP_VERSION)
5746 #   ifndef __cpp_lib_ranges_zip
5747 #     error "__cpp_lib_ranges_zip should be defined in c++23"
5748 #   endif
5749 #   if __cpp_lib_ranges_zip != 202110L
5750 #     error "__cpp_lib_ranges_zip should have the value 202110L in c++23"
5751 #   endif
5752 # else // _LIBCPP_VERSION
5753 #   ifdef __cpp_lib_ranges_zip
5754 #     error "__cpp_lib_ranges_zip should not be defined because it is unimplemented in libc++!"
5755 #   endif
5756 # endif
5757 
5758 # ifdef __cpp_lib_ratio
5759 #   error "__cpp_lib_ratio should not be defined before c++26"
5760 # endif
5761 
5762 # ifndef __cpp_lib_raw_memory_algorithms
5763 #   error "__cpp_lib_raw_memory_algorithms should be defined in c++23"
5764 # endif
5765 # if __cpp_lib_raw_memory_algorithms != 201606L
5766 #   error "__cpp_lib_raw_memory_algorithms should have the value 201606L in c++23"
5767 # endif
5768 
5769 # ifdef __cpp_lib_rcu
5770 #   error "__cpp_lib_rcu should not be defined before c++26"
5771 # endif
5772 
5773 # if !defined(_LIBCPP_VERSION)
5774 #   ifndef __cpp_lib_reference_from_temporary
5775 #     error "__cpp_lib_reference_from_temporary should be defined in c++23"
5776 #   endif
5777 #   if __cpp_lib_reference_from_temporary != 202202L
5778 #     error "__cpp_lib_reference_from_temporary should have the value 202202L in c++23"
5779 #   endif
5780 # else // _LIBCPP_VERSION
5781 #   ifdef __cpp_lib_reference_from_temporary
5782 #     error "__cpp_lib_reference_from_temporary should not be defined because it is unimplemented in libc++!"
5783 #   endif
5784 # endif
5785 
5786 # ifdef __cpp_lib_reference_wrapper
5787 #   error "__cpp_lib_reference_wrapper should not be defined before c++26"
5788 # endif
5789 
5790 # ifndef __cpp_lib_remove_cvref
5791 #   error "__cpp_lib_remove_cvref should be defined in c++23"
5792 # endif
5793 # if __cpp_lib_remove_cvref != 201711L
5794 #   error "__cpp_lib_remove_cvref should have the value 201711L in c++23"
5795 # endif
5796 
5797 # ifndef __cpp_lib_result_of_sfinae
5798 #   error "__cpp_lib_result_of_sfinae should be defined in c++23"
5799 # endif
5800 # if __cpp_lib_result_of_sfinae != 201210L
5801 #   error "__cpp_lib_result_of_sfinae should have the value 201210L in c++23"
5802 # endif
5803 
5804 # ifndef __cpp_lib_robust_nonmodifying_seq_ops
5805 #   error "__cpp_lib_robust_nonmodifying_seq_ops should be defined in c++23"
5806 # endif
5807 # if __cpp_lib_robust_nonmodifying_seq_ops != 201304L
5808 #   error "__cpp_lib_robust_nonmodifying_seq_ops should have the value 201304L in c++23"
5809 # endif
5810 
5811 # ifndef __cpp_lib_sample
5812 #   error "__cpp_lib_sample should be defined in c++23"
5813 # endif
5814 # if __cpp_lib_sample != 201603L
5815 #   error "__cpp_lib_sample should have the value 201603L in c++23"
5816 # endif
5817 
5818 # ifdef __cpp_lib_saturation_arithmetic
5819 #   error "__cpp_lib_saturation_arithmetic should not be defined before c++26"
5820 # endif
5821 
5822 # if !defined(_LIBCPP_HAS_NO_THREADS)
5823 #   ifndef __cpp_lib_scoped_lock
5824 #     error "__cpp_lib_scoped_lock should be defined in c++23"
5825 #   endif
5826 #   if __cpp_lib_scoped_lock != 201703L
5827 #     error "__cpp_lib_scoped_lock should have the value 201703L in c++23"
5828 #   endif
5829 # else
5830 #   ifdef __cpp_lib_scoped_lock
5831 #     error "__cpp_lib_scoped_lock should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS)' is not met!"
5832 #   endif
5833 # endif
5834 
5835 # if !defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)
5836 #   ifndef __cpp_lib_semaphore
5837 #     error "__cpp_lib_semaphore should be defined in c++23"
5838 #   endif
5839 #   if __cpp_lib_semaphore != 201907L
5840 #     error "__cpp_lib_semaphore should have the value 201907L in c++23"
5841 #   endif
5842 # else
5843 #   ifdef __cpp_lib_semaphore
5844 #     error "__cpp_lib_semaphore should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)' is not met!"
5845 #   endif
5846 # endif
5847 
5848 # ifdef __cpp_lib_senders
5849 #   error "__cpp_lib_senders should not be defined before c++26"
5850 # endif
5851 
5852 # if !defined(_LIBCPP_HAS_NO_THREADS)
5853 #   ifndef __cpp_lib_shared_mutex
5854 #     error "__cpp_lib_shared_mutex should be defined in c++23"
5855 #   endif
5856 #   if __cpp_lib_shared_mutex != 201505L
5857 #     error "__cpp_lib_shared_mutex should have the value 201505L in c++23"
5858 #   endif
5859 # else
5860 #   ifdef __cpp_lib_shared_mutex
5861 #     error "__cpp_lib_shared_mutex should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS)' is not met!"
5862 #   endif
5863 # endif
5864 
5865 # ifndef __cpp_lib_shared_ptr_arrays
5866 #   error "__cpp_lib_shared_ptr_arrays should be defined in c++23"
5867 # endif
5868 # if __cpp_lib_shared_ptr_arrays != 201707L
5869 #   error "__cpp_lib_shared_ptr_arrays should have the value 201707L in c++23"
5870 # endif
5871 
5872 # ifndef __cpp_lib_shared_ptr_weak_type
5873 #   error "__cpp_lib_shared_ptr_weak_type should be defined in c++23"
5874 # endif
5875 # if __cpp_lib_shared_ptr_weak_type != 201606L
5876 #   error "__cpp_lib_shared_ptr_weak_type should have the value 201606L in c++23"
5877 # endif
5878 
5879 # if !defined(_LIBCPP_HAS_NO_THREADS)
5880 #   ifndef __cpp_lib_shared_timed_mutex
5881 #     error "__cpp_lib_shared_timed_mutex should be defined in c++23"
5882 #   endif
5883 #   if __cpp_lib_shared_timed_mutex != 201402L
5884 #     error "__cpp_lib_shared_timed_mutex should have the value 201402L in c++23"
5885 #   endif
5886 # else
5887 #   ifdef __cpp_lib_shared_timed_mutex
5888 #     error "__cpp_lib_shared_timed_mutex should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS)' is not met!"
5889 #   endif
5890 # endif
5891 
5892 # ifndef __cpp_lib_shift
5893 #   error "__cpp_lib_shift should be defined in c++23"
5894 # endif
5895 # if __cpp_lib_shift != 201806L
5896 #   error "__cpp_lib_shift should have the value 201806L in c++23"
5897 # endif
5898 
5899 # if !defined(_LIBCPP_VERSION)
5900 #   ifndef __cpp_lib_smart_ptr_for_overwrite
5901 #     error "__cpp_lib_smart_ptr_for_overwrite should be defined in c++23"
5902 #   endif
5903 #   if __cpp_lib_smart_ptr_for_overwrite != 202002L
5904 #     error "__cpp_lib_smart_ptr_for_overwrite should have the value 202002L in c++23"
5905 #   endif
5906 # else // _LIBCPP_VERSION
5907 #   ifdef __cpp_lib_smart_ptr_for_overwrite
5908 #     error "__cpp_lib_smart_ptr_for_overwrite should not be defined because it is unimplemented in libc++!"
5909 #   endif
5910 # endif
5911 
5912 # ifdef __cpp_lib_smart_ptr_owner_equality
5913 #   error "__cpp_lib_smart_ptr_owner_equality should not be defined before c++26"
5914 # endif
5915 
5916 # ifndef __cpp_lib_source_location
5917 #   error "__cpp_lib_source_location should be defined in c++23"
5918 # endif
5919 # if __cpp_lib_source_location != 201907L
5920 #   error "__cpp_lib_source_location should have the value 201907L in c++23"
5921 # endif
5922 
5923 # ifndef __cpp_lib_span
5924 #   error "__cpp_lib_span should be defined in c++23"
5925 # endif
5926 # if __cpp_lib_span != 202002L
5927 #   error "__cpp_lib_span should have the value 202002L in c++23"
5928 # endif
5929 
5930 # ifdef __cpp_lib_span_at
5931 #   error "__cpp_lib_span_at should not be defined before c++26"
5932 # endif
5933 
5934 # ifdef __cpp_lib_span_initializer_list
5935 #   error "__cpp_lib_span_initializer_list should not be defined before c++26"
5936 # endif
5937 
5938 # if !defined(_LIBCPP_VERSION)
5939 #   ifndef __cpp_lib_spanstream
5940 #     error "__cpp_lib_spanstream should be defined in c++23"
5941 #   endif
5942 #   if __cpp_lib_spanstream != 202106L
5943 #     error "__cpp_lib_spanstream should have the value 202106L in c++23"
5944 #   endif
5945 # else // _LIBCPP_VERSION
5946 #   ifdef __cpp_lib_spanstream
5947 #     error "__cpp_lib_spanstream should not be defined because it is unimplemented in libc++!"
5948 #   endif
5949 # endif
5950 
5951 # ifndef __cpp_lib_ssize
5952 #   error "__cpp_lib_ssize should be defined in c++23"
5953 # endif
5954 # if __cpp_lib_ssize != 201902L
5955 #   error "__cpp_lib_ssize should have the value 201902L in c++23"
5956 # endif
5957 
5958 # ifdef __cpp_lib_sstream_from_string_view
5959 #   error "__cpp_lib_sstream_from_string_view should not be defined before c++26"
5960 # endif
5961 
5962 # if !defined(_LIBCPP_VERSION)
5963 #   ifndef __cpp_lib_stacktrace
5964 #     error "__cpp_lib_stacktrace should be defined in c++23"
5965 #   endif
5966 #   if __cpp_lib_stacktrace != 202011L
5967 #     error "__cpp_lib_stacktrace should have the value 202011L in c++23"
5968 #   endif
5969 # else // _LIBCPP_VERSION
5970 #   ifdef __cpp_lib_stacktrace
5971 #     error "__cpp_lib_stacktrace should not be defined because it is unimplemented in libc++!"
5972 #   endif
5973 # endif
5974 
5975 # ifndef __cpp_lib_starts_ends_with
5976 #   error "__cpp_lib_starts_ends_with should be defined in c++23"
5977 # endif
5978 # if __cpp_lib_starts_ends_with != 201711L
5979 #   error "__cpp_lib_starts_ends_with should have the value 201711L in c++23"
5980 # endif
5981 
5982 # ifndef __cpp_lib_stdatomic_h
5983 #   error "__cpp_lib_stdatomic_h should be defined in c++23"
5984 # endif
5985 # if __cpp_lib_stdatomic_h != 202011L
5986 #   error "__cpp_lib_stdatomic_h should have the value 202011L in c++23"
5987 # endif
5988 
5989 # ifndef __cpp_lib_string_contains
5990 #   error "__cpp_lib_string_contains should be defined in c++23"
5991 # endif
5992 # if __cpp_lib_string_contains != 202011L
5993 #   error "__cpp_lib_string_contains should have the value 202011L in c++23"
5994 # endif
5995 
5996 # ifndef __cpp_lib_string_resize_and_overwrite
5997 #   error "__cpp_lib_string_resize_and_overwrite should be defined in c++23"
5998 # endif
5999 # if __cpp_lib_string_resize_and_overwrite != 202110L
6000 #   error "__cpp_lib_string_resize_and_overwrite should have the value 202110L in c++23"
6001 # endif
6002 
6003 # ifndef __cpp_lib_string_udls
6004 #   error "__cpp_lib_string_udls should be defined in c++23"
6005 # endif
6006 # if __cpp_lib_string_udls != 201304L
6007 #   error "__cpp_lib_string_udls should have the value 201304L in c++23"
6008 # endif
6009 
6010 # ifndef __cpp_lib_string_view
6011 #   error "__cpp_lib_string_view should be defined in c++23"
6012 # endif
6013 # if __cpp_lib_string_view != 201803L
6014 #   error "__cpp_lib_string_view should have the value 201803L in c++23"
6015 # endif
6016 
6017 # ifdef __cpp_lib_submdspan
6018 #   error "__cpp_lib_submdspan should not be defined before c++26"
6019 # endif
6020 
6021 # if !defined(_LIBCPP_HAS_NO_EXPERIMENTAL_SYNCSTREAM)
6022 #   ifndef __cpp_lib_syncbuf
6023 #     error "__cpp_lib_syncbuf should be defined in c++23"
6024 #   endif
6025 #   if __cpp_lib_syncbuf != 201803L
6026 #     error "__cpp_lib_syncbuf should have the value 201803L in c++23"
6027 #   endif
6028 # else
6029 #   ifdef __cpp_lib_syncbuf
6030 #     error "__cpp_lib_syncbuf should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_EXPERIMENTAL_SYNCSTREAM)' is not met!"
6031 #   endif
6032 # endif
6033 
6034 # ifdef __cpp_lib_text_encoding
6035 #   error "__cpp_lib_text_encoding should not be defined before c++26"
6036 # endif
6037 
6038 # ifndef __cpp_lib_three_way_comparison
6039 #   error "__cpp_lib_three_way_comparison should be defined in c++23"
6040 # endif
6041 # if __cpp_lib_three_way_comparison != 201907L
6042 #   error "__cpp_lib_three_way_comparison should have the value 201907L in c++23"
6043 # endif
6044 
6045 # ifndef __cpp_lib_to_address
6046 #   error "__cpp_lib_to_address should be defined in c++23"
6047 # endif
6048 # if __cpp_lib_to_address != 201711L
6049 #   error "__cpp_lib_to_address should have the value 201711L in c++23"
6050 # endif
6051 
6052 # ifndef __cpp_lib_to_array
6053 #   error "__cpp_lib_to_array should be defined in c++23"
6054 # endif
6055 # if __cpp_lib_to_array != 201907L
6056 #   error "__cpp_lib_to_array should have the value 201907L in c++23"
6057 # endif
6058 
6059 # if !defined(_LIBCPP_VERSION)
6060 #   ifndef __cpp_lib_to_chars
6061 #     error "__cpp_lib_to_chars should be defined in c++23"
6062 #   endif
6063 #   if __cpp_lib_to_chars != 201611L
6064 #     error "__cpp_lib_to_chars should have the value 201611L in c++23"
6065 #   endif
6066 # else // _LIBCPP_VERSION
6067 #   ifdef __cpp_lib_to_chars
6068 #     error "__cpp_lib_to_chars should not be defined because it is unimplemented in libc++!"
6069 #   endif
6070 # endif
6071 
6072 # ifdef __cpp_lib_to_string
6073 #   error "__cpp_lib_to_string should not be defined before c++26"
6074 # endif
6075 
6076 # ifndef __cpp_lib_to_underlying
6077 #   error "__cpp_lib_to_underlying should be defined in c++23"
6078 # endif
6079 # if __cpp_lib_to_underlying != 202102L
6080 #   error "__cpp_lib_to_underlying should have the value 202102L in c++23"
6081 # endif
6082 
6083 # ifndef __cpp_lib_transformation_trait_aliases
6084 #   error "__cpp_lib_transformation_trait_aliases should be defined in c++23"
6085 # endif
6086 # if __cpp_lib_transformation_trait_aliases != 201304L
6087 #   error "__cpp_lib_transformation_trait_aliases should have the value 201304L in c++23"
6088 # endif
6089 
6090 # ifndef __cpp_lib_transparent_operators
6091 #   error "__cpp_lib_transparent_operators should be defined in c++23"
6092 # endif
6093 # if __cpp_lib_transparent_operators != 201510L
6094 #   error "__cpp_lib_transparent_operators should have the value 201510L in c++23"
6095 # endif
6096 
6097 # ifndef __cpp_lib_tuple_element_t
6098 #   error "__cpp_lib_tuple_element_t should be defined in c++23"
6099 # endif
6100 # if __cpp_lib_tuple_element_t != 201402L
6101 #   error "__cpp_lib_tuple_element_t should have the value 201402L in c++23"
6102 # endif
6103 
6104 # if !defined(_LIBCPP_VERSION)
6105 #   ifndef __cpp_lib_tuple_like
6106 #     error "__cpp_lib_tuple_like should be defined in c++23"
6107 #   endif
6108 #   if __cpp_lib_tuple_like != 202207L
6109 #     error "__cpp_lib_tuple_like should have the value 202207L in c++23"
6110 #   endif
6111 # else // _LIBCPP_VERSION
6112 #   ifdef __cpp_lib_tuple_like
6113 #     error "__cpp_lib_tuple_like should not be defined because it is unimplemented in libc++!"
6114 #   endif
6115 # endif
6116 
6117 # ifndef __cpp_lib_tuples_by_type
6118 #   error "__cpp_lib_tuples_by_type should be defined in c++23"
6119 # endif
6120 # if __cpp_lib_tuples_by_type != 201304L
6121 #   error "__cpp_lib_tuples_by_type should have the value 201304L in c++23"
6122 # endif
6123 
6124 # ifndef __cpp_lib_type_identity
6125 #   error "__cpp_lib_type_identity should be defined in c++23"
6126 # endif
6127 # if __cpp_lib_type_identity != 201806L
6128 #   error "__cpp_lib_type_identity should have the value 201806L in c++23"
6129 # endif
6130 
6131 # ifndef __cpp_lib_type_trait_variable_templates
6132 #   error "__cpp_lib_type_trait_variable_templates should be defined in c++23"
6133 # endif
6134 # if __cpp_lib_type_trait_variable_templates != 201510L
6135 #   error "__cpp_lib_type_trait_variable_templates should have the value 201510L in c++23"
6136 # endif
6137 
6138 # ifndef __cpp_lib_uncaught_exceptions
6139 #   error "__cpp_lib_uncaught_exceptions should be defined in c++23"
6140 # endif
6141 # if __cpp_lib_uncaught_exceptions != 201411L
6142 #   error "__cpp_lib_uncaught_exceptions should have the value 201411L in c++23"
6143 # endif
6144 
6145 # ifndef __cpp_lib_unordered_map_try_emplace
6146 #   error "__cpp_lib_unordered_map_try_emplace should be defined in c++23"
6147 # endif
6148 # if __cpp_lib_unordered_map_try_emplace != 201411L
6149 #   error "__cpp_lib_unordered_map_try_emplace should have the value 201411L in c++23"
6150 # endif
6151 
6152 # ifndef __cpp_lib_unreachable
6153 #   error "__cpp_lib_unreachable should be defined in c++23"
6154 # endif
6155 # if __cpp_lib_unreachable != 202202L
6156 #   error "__cpp_lib_unreachable should have the value 202202L in c++23"
6157 # endif
6158 
6159 # ifndef __cpp_lib_unwrap_ref
6160 #   error "__cpp_lib_unwrap_ref should be defined in c++23"
6161 # endif
6162 # if __cpp_lib_unwrap_ref != 201811L
6163 #   error "__cpp_lib_unwrap_ref should have the value 201811L in c++23"
6164 # endif
6165 
6166 # ifndef __cpp_lib_variant
6167 #   error "__cpp_lib_variant should be defined in c++23"
6168 # endif
6169 # if __cpp_lib_variant != 202102L
6170 #   error "__cpp_lib_variant should have the value 202102L in c++23"
6171 # endif
6172 
6173 # ifndef __cpp_lib_void_t
6174 #   error "__cpp_lib_void_t should be defined in c++23"
6175 # endif
6176 # if __cpp_lib_void_t != 201411L
6177 #   error "__cpp_lib_void_t should have the value 201411L in c++23"
6178 # endif
6179 
6180 #elif TEST_STD_VER > 23
6181 
6182 # ifndef __cpp_lib_adaptor_iterator_pair_constructor
6183 #   error "__cpp_lib_adaptor_iterator_pair_constructor should be defined in c++26"
6184 # endif
6185 # if __cpp_lib_adaptor_iterator_pair_constructor != 202106L
6186 #   error "__cpp_lib_adaptor_iterator_pair_constructor should have the value 202106L in c++26"
6187 # endif
6188 
6189 # ifndef __cpp_lib_addressof_constexpr
6190 #   error "__cpp_lib_addressof_constexpr should be defined in c++26"
6191 # endif
6192 # if __cpp_lib_addressof_constexpr != 201603L
6193 #   error "__cpp_lib_addressof_constexpr should have the value 201603L in c++26"
6194 # endif
6195 
6196 # ifndef __cpp_lib_allocate_at_least
6197 #   error "__cpp_lib_allocate_at_least should be defined in c++26"
6198 # endif
6199 # if __cpp_lib_allocate_at_least != 202302L
6200 #   error "__cpp_lib_allocate_at_least should have the value 202302L in c++26"
6201 # endif
6202 
6203 # ifndef __cpp_lib_allocator_traits_is_always_equal
6204 #   error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++26"
6205 # endif
6206 # if __cpp_lib_allocator_traits_is_always_equal != 201411L
6207 #   error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++26"
6208 # endif
6209 
6210 # ifndef __cpp_lib_any
6211 #   error "__cpp_lib_any should be defined in c++26"
6212 # endif
6213 # if __cpp_lib_any != 201606L
6214 #   error "__cpp_lib_any should have the value 201606L in c++26"
6215 # endif
6216 
6217 # ifndef __cpp_lib_apply
6218 #   error "__cpp_lib_apply should be defined in c++26"
6219 # endif
6220 # if __cpp_lib_apply != 201603L
6221 #   error "__cpp_lib_apply should have the value 201603L in c++26"
6222 # endif
6223 
6224 # ifndef __cpp_lib_array_constexpr
6225 #   error "__cpp_lib_array_constexpr should be defined in c++26"
6226 # endif
6227 # if __cpp_lib_array_constexpr != 201811L
6228 #   error "__cpp_lib_array_constexpr should have the value 201811L in c++26"
6229 # endif
6230 
6231 # ifndef __cpp_lib_as_const
6232 #   error "__cpp_lib_as_const should be defined in c++26"
6233 # endif
6234 # if __cpp_lib_as_const != 201510L
6235 #   error "__cpp_lib_as_const should have the value 201510L in c++26"
6236 # endif
6237 
6238 # if !defined(_LIBCPP_VERSION)
6239 #   ifndef __cpp_lib_associative_heterogeneous_erasure
6240 #     error "__cpp_lib_associative_heterogeneous_erasure should be defined in c++26"
6241 #   endif
6242 #   if __cpp_lib_associative_heterogeneous_erasure != 202110L
6243 #     error "__cpp_lib_associative_heterogeneous_erasure should have the value 202110L in c++26"
6244 #   endif
6245 # else // _LIBCPP_VERSION
6246 #   ifdef __cpp_lib_associative_heterogeneous_erasure
6247 #     error "__cpp_lib_associative_heterogeneous_erasure should not be defined because it is unimplemented in libc++!"
6248 #   endif
6249 # endif
6250 
6251 # if !defined(_LIBCPP_VERSION)
6252 #   ifndef __cpp_lib_associative_heterogeneous_insertion
6253 #     error "__cpp_lib_associative_heterogeneous_insertion should be defined in c++26"
6254 #   endif
6255 #   if __cpp_lib_associative_heterogeneous_insertion != 202306L
6256 #     error "__cpp_lib_associative_heterogeneous_insertion should have the value 202306L in c++26"
6257 #   endif
6258 # else // _LIBCPP_VERSION
6259 #   ifdef __cpp_lib_associative_heterogeneous_insertion
6260 #     error "__cpp_lib_associative_heterogeneous_insertion should not be defined because it is unimplemented in libc++!"
6261 #   endif
6262 # endif
6263 
6264 # ifndef __cpp_lib_assume_aligned
6265 #   error "__cpp_lib_assume_aligned should be defined in c++26"
6266 # endif
6267 # if __cpp_lib_assume_aligned != 201811L
6268 #   error "__cpp_lib_assume_aligned should have the value 201811L in c++26"
6269 # endif
6270 
6271 # ifndef __cpp_lib_atomic_flag_test
6272 #   error "__cpp_lib_atomic_flag_test should be defined in c++26"
6273 # endif
6274 # if __cpp_lib_atomic_flag_test != 201907L
6275 #   error "__cpp_lib_atomic_flag_test should have the value 201907L in c++26"
6276 # endif
6277 
6278 # if !defined(_LIBCPP_VERSION)
6279 #   ifndef __cpp_lib_atomic_float
6280 #     error "__cpp_lib_atomic_float should be defined in c++26"
6281 #   endif
6282 #   if __cpp_lib_atomic_float != 201711L
6283 #     error "__cpp_lib_atomic_float should have the value 201711L in c++26"
6284 #   endif
6285 # else // _LIBCPP_VERSION
6286 #   ifdef __cpp_lib_atomic_float
6287 #     error "__cpp_lib_atomic_float should not be defined because it is unimplemented in libc++!"
6288 #   endif
6289 # endif
6290 
6291 # ifndef __cpp_lib_atomic_is_always_lock_free
6292 #   error "__cpp_lib_atomic_is_always_lock_free should be defined in c++26"
6293 # endif
6294 # if __cpp_lib_atomic_is_always_lock_free != 201603L
6295 #   error "__cpp_lib_atomic_is_always_lock_free should have the value 201603L in c++26"
6296 # endif
6297 
6298 # ifndef __cpp_lib_atomic_lock_free_type_aliases
6299 #   error "__cpp_lib_atomic_lock_free_type_aliases should be defined in c++26"
6300 # endif
6301 # if __cpp_lib_atomic_lock_free_type_aliases != 201907L
6302 #   error "__cpp_lib_atomic_lock_free_type_aliases should have the value 201907L in c++26"
6303 # endif
6304 
6305 # if !defined(_LIBCPP_VERSION)
6306 #   ifndef __cpp_lib_atomic_min_max
6307 #     error "__cpp_lib_atomic_min_max should be defined in c++26"
6308 #   endif
6309 #   if __cpp_lib_atomic_min_max != 202403L
6310 #     error "__cpp_lib_atomic_min_max should have the value 202403L in c++26"
6311 #   endif
6312 # else // _LIBCPP_VERSION
6313 #   ifdef __cpp_lib_atomic_min_max
6314 #     error "__cpp_lib_atomic_min_max should not be defined because it is unimplemented in libc++!"
6315 #   endif
6316 # endif
6317 
6318 # ifndef __cpp_lib_atomic_ref
6319 #   error "__cpp_lib_atomic_ref should be defined in c++26"
6320 # endif
6321 # if __cpp_lib_atomic_ref != 201806L
6322 #   error "__cpp_lib_atomic_ref should have the value 201806L in c++26"
6323 # endif
6324 
6325 # if !defined(_LIBCPP_VERSION)
6326 #   ifndef __cpp_lib_atomic_shared_ptr
6327 #     error "__cpp_lib_atomic_shared_ptr should be defined in c++26"
6328 #   endif
6329 #   if __cpp_lib_atomic_shared_ptr != 201711L
6330 #     error "__cpp_lib_atomic_shared_ptr should have the value 201711L in c++26"
6331 #   endif
6332 # else // _LIBCPP_VERSION
6333 #   ifdef __cpp_lib_atomic_shared_ptr
6334 #     error "__cpp_lib_atomic_shared_ptr should not be defined because it is unimplemented in libc++!"
6335 #   endif
6336 # endif
6337 
6338 # ifndef __cpp_lib_atomic_value_initialization
6339 #   error "__cpp_lib_atomic_value_initialization should be defined in c++26"
6340 # endif
6341 # if __cpp_lib_atomic_value_initialization != 201911L
6342 #   error "__cpp_lib_atomic_value_initialization should have the value 201911L in c++26"
6343 # endif
6344 
6345 # if !defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC
6346 #   ifndef __cpp_lib_atomic_wait
6347 #     error "__cpp_lib_atomic_wait should be defined in c++26"
6348 #   endif
6349 #   if __cpp_lib_atomic_wait != 201907L
6350 #     error "__cpp_lib_atomic_wait should have the value 201907L in c++26"
6351 #   endif
6352 # else
6353 #   ifdef __cpp_lib_atomic_wait
6354 #     error "__cpp_lib_atomic_wait should not be defined when the requirement '!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC' is not met!"
6355 #   endif
6356 # endif
6357 
6358 # if !defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)
6359 #   ifndef __cpp_lib_barrier
6360 #     error "__cpp_lib_barrier should be defined in c++26"
6361 #   endif
6362 #   if __cpp_lib_barrier != 201907L
6363 #     error "__cpp_lib_barrier should have the value 201907L in c++26"
6364 #   endif
6365 # else
6366 #   ifdef __cpp_lib_barrier
6367 #     error "__cpp_lib_barrier should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)' is not met!"
6368 #   endif
6369 # endif
6370 
6371 # ifndef __cpp_lib_bind_back
6372 #   error "__cpp_lib_bind_back should be defined in c++26"
6373 # endif
6374 # if __cpp_lib_bind_back != 202202L
6375 #   error "__cpp_lib_bind_back should have the value 202202L in c++26"
6376 # endif
6377 
6378 # ifndef __cpp_lib_bind_front
6379 #   error "__cpp_lib_bind_front should be defined in c++26"
6380 # endif
6381 # if __cpp_lib_bind_front != 202306L
6382 #   error "__cpp_lib_bind_front should have the value 202306L in c++26"
6383 # endif
6384 
6385 # ifndef __cpp_lib_bit_cast
6386 #   error "__cpp_lib_bit_cast should be defined in c++26"
6387 # endif
6388 # if __cpp_lib_bit_cast != 201806L
6389 #   error "__cpp_lib_bit_cast should have the value 201806L in c++26"
6390 # endif
6391 
6392 # ifndef __cpp_lib_bitops
6393 #   error "__cpp_lib_bitops should be defined in c++26"
6394 # endif
6395 # if __cpp_lib_bitops != 201907L
6396 #   error "__cpp_lib_bitops should have the value 201907L in c++26"
6397 # endif
6398 
6399 # ifndef __cpp_lib_bitset
6400 #   error "__cpp_lib_bitset should be defined in c++26"
6401 # endif
6402 # if __cpp_lib_bitset != 202306L
6403 #   error "__cpp_lib_bitset should have the value 202306L in c++26"
6404 # endif
6405 
6406 # ifndef __cpp_lib_bool_constant
6407 #   error "__cpp_lib_bool_constant should be defined in c++26"
6408 # endif
6409 # if __cpp_lib_bool_constant != 201505L
6410 #   error "__cpp_lib_bool_constant should have the value 201505L in c++26"
6411 # endif
6412 
6413 # ifndef __cpp_lib_bounded_array_traits
6414 #   error "__cpp_lib_bounded_array_traits should be defined in c++26"
6415 # endif
6416 # if __cpp_lib_bounded_array_traits != 201902L
6417 #   error "__cpp_lib_bounded_array_traits should have the value 201902L in c++26"
6418 # endif
6419 
6420 # ifndef __cpp_lib_boyer_moore_searcher
6421 #   error "__cpp_lib_boyer_moore_searcher should be defined in c++26"
6422 # endif
6423 # if __cpp_lib_boyer_moore_searcher != 201603L
6424 #   error "__cpp_lib_boyer_moore_searcher should have the value 201603L in c++26"
6425 # endif
6426 
6427 # ifndef __cpp_lib_byte
6428 #   error "__cpp_lib_byte should be defined in c++26"
6429 # endif
6430 # if __cpp_lib_byte != 201603L
6431 #   error "__cpp_lib_byte should have the value 201603L in c++26"
6432 # endif
6433 
6434 # ifndef __cpp_lib_byteswap
6435 #   error "__cpp_lib_byteswap should be defined in c++26"
6436 # endif
6437 # if __cpp_lib_byteswap != 202110L
6438 #   error "__cpp_lib_byteswap should have the value 202110L in c++26"
6439 # endif
6440 
6441 # if defined(__cpp_char8_t)
6442 #   ifndef __cpp_lib_char8_t
6443 #     error "__cpp_lib_char8_t should be defined in c++26"
6444 #   endif
6445 #   if __cpp_lib_char8_t != 201907L
6446 #     error "__cpp_lib_char8_t should have the value 201907L in c++26"
6447 #   endif
6448 # else
6449 #   ifdef __cpp_lib_char8_t
6450 #     error "__cpp_lib_char8_t should not be defined when the requirement 'defined(__cpp_char8_t)' is not met!"
6451 #   endif
6452 # endif
6453 
6454 # ifndef __cpp_lib_chrono
6455 #   error "__cpp_lib_chrono should be defined in c++26"
6456 # endif
6457 # if __cpp_lib_chrono != 201611L
6458 #   error "__cpp_lib_chrono should have the value 201611L in c++26"
6459 # endif
6460 
6461 # ifndef __cpp_lib_chrono_udls
6462 #   error "__cpp_lib_chrono_udls should be defined in c++26"
6463 # endif
6464 # if __cpp_lib_chrono_udls != 201304L
6465 #   error "__cpp_lib_chrono_udls should have the value 201304L in c++26"
6466 # endif
6467 
6468 # ifndef __cpp_lib_clamp
6469 #   error "__cpp_lib_clamp should be defined in c++26"
6470 # endif
6471 # if __cpp_lib_clamp != 201603L
6472 #   error "__cpp_lib_clamp should have the value 201603L in c++26"
6473 # endif
6474 
6475 # ifndef __cpp_lib_complex_udls
6476 #   error "__cpp_lib_complex_udls should be defined in c++26"
6477 # endif
6478 # if __cpp_lib_complex_udls != 201309L
6479 #   error "__cpp_lib_complex_udls should have the value 201309L in c++26"
6480 # endif
6481 
6482 # ifndef __cpp_lib_concepts
6483 #   error "__cpp_lib_concepts should be defined in c++26"
6484 # endif
6485 # if __cpp_lib_concepts != 202002L
6486 #   error "__cpp_lib_concepts should have the value 202002L in c++26"
6487 # endif
6488 
6489 # ifndef __cpp_lib_constexpr_algorithms
6490 #   error "__cpp_lib_constexpr_algorithms should be defined in c++26"
6491 # endif
6492 # if __cpp_lib_constexpr_algorithms != 201806L
6493 #   error "__cpp_lib_constexpr_algorithms should have the value 201806L in c++26"
6494 # endif
6495 
6496 # ifndef __cpp_lib_constexpr_bitset
6497 #   error "__cpp_lib_constexpr_bitset should be defined in c++26"
6498 # endif
6499 # if __cpp_lib_constexpr_bitset != 202207L
6500 #   error "__cpp_lib_constexpr_bitset should have the value 202207L in c++26"
6501 # endif
6502 
6503 # ifndef __cpp_lib_constexpr_charconv
6504 #   error "__cpp_lib_constexpr_charconv should be defined in c++26"
6505 # endif
6506 # if __cpp_lib_constexpr_charconv != 202207L
6507 #   error "__cpp_lib_constexpr_charconv should have the value 202207L in c++26"
6508 # endif
6509 
6510 # if !defined(_LIBCPP_VERSION)
6511 #   ifndef __cpp_lib_constexpr_cmath
6512 #     error "__cpp_lib_constexpr_cmath should be defined in c++26"
6513 #   endif
6514 #   if __cpp_lib_constexpr_cmath != 202202L
6515 #     error "__cpp_lib_constexpr_cmath should have the value 202202L in c++26"
6516 #   endif
6517 # else // _LIBCPP_VERSION
6518 #   ifdef __cpp_lib_constexpr_cmath
6519 #     error "__cpp_lib_constexpr_cmath should not be defined because it is unimplemented in libc++!"
6520 #   endif
6521 # endif
6522 
6523 # ifndef __cpp_lib_constexpr_complex
6524 #   error "__cpp_lib_constexpr_complex should be defined in c++26"
6525 # endif
6526 # if __cpp_lib_constexpr_complex != 201711L
6527 #   error "__cpp_lib_constexpr_complex should have the value 201711L in c++26"
6528 # endif
6529 
6530 # ifndef __cpp_lib_constexpr_dynamic_alloc
6531 #   error "__cpp_lib_constexpr_dynamic_alloc should be defined in c++26"
6532 # endif
6533 # if __cpp_lib_constexpr_dynamic_alloc != 201907L
6534 #   error "__cpp_lib_constexpr_dynamic_alloc should have the value 201907L in c++26"
6535 # endif
6536 
6537 # ifndef __cpp_lib_constexpr_functional
6538 #   error "__cpp_lib_constexpr_functional should be defined in c++26"
6539 # endif
6540 # if __cpp_lib_constexpr_functional != 201907L
6541 #   error "__cpp_lib_constexpr_functional should have the value 201907L in c++26"
6542 # endif
6543 
6544 # ifndef __cpp_lib_constexpr_iterator
6545 #   error "__cpp_lib_constexpr_iterator should be defined in c++26"
6546 # endif
6547 # if __cpp_lib_constexpr_iterator != 201811L
6548 #   error "__cpp_lib_constexpr_iterator should have the value 201811L in c++26"
6549 # endif
6550 
6551 # ifndef __cpp_lib_constexpr_memory
6552 #   error "__cpp_lib_constexpr_memory should be defined in c++26"
6553 # endif
6554 # if __cpp_lib_constexpr_memory != 202202L
6555 #   error "__cpp_lib_constexpr_memory should have the value 202202L in c++26"
6556 # endif
6557 
6558 # if !defined(_LIBCPP_ABI_VCRUNTIME)
6559 #   ifndef __cpp_lib_constexpr_new
6560 #     error "__cpp_lib_constexpr_new should be defined in c++26"
6561 #   endif
6562 #   if __cpp_lib_constexpr_new != 202406L
6563 #     error "__cpp_lib_constexpr_new should have the value 202406L in c++26"
6564 #   endif
6565 # else
6566 #   ifdef __cpp_lib_constexpr_new
6567 #     error "__cpp_lib_constexpr_new should not be defined when the requirement '!defined(_LIBCPP_ABI_VCRUNTIME)' is not met!"
6568 #   endif
6569 # endif
6570 
6571 # ifndef __cpp_lib_constexpr_numeric
6572 #   error "__cpp_lib_constexpr_numeric should be defined in c++26"
6573 # endif
6574 # if __cpp_lib_constexpr_numeric != 201911L
6575 #   error "__cpp_lib_constexpr_numeric should have the value 201911L in c++26"
6576 # endif
6577 
6578 # ifndef __cpp_lib_constexpr_string
6579 #   error "__cpp_lib_constexpr_string should be defined in c++26"
6580 # endif
6581 # if __cpp_lib_constexpr_string != 201907L
6582 #   error "__cpp_lib_constexpr_string should have the value 201907L in c++26"
6583 # endif
6584 
6585 # ifndef __cpp_lib_constexpr_string_view
6586 #   error "__cpp_lib_constexpr_string_view should be defined in c++26"
6587 # endif
6588 # if __cpp_lib_constexpr_string_view != 201811L
6589 #   error "__cpp_lib_constexpr_string_view should have the value 201811L in c++26"
6590 # endif
6591 
6592 # ifndef __cpp_lib_constexpr_tuple
6593 #   error "__cpp_lib_constexpr_tuple should be defined in c++26"
6594 # endif
6595 # if __cpp_lib_constexpr_tuple != 201811L
6596 #   error "__cpp_lib_constexpr_tuple should have the value 201811L in c++26"
6597 # endif
6598 
6599 # ifndef __cpp_lib_constexpr_typeinfo
6600 #   error "__cpp_lib_constexpr_typeinfo should be defined in c++26"
6601 # endif
6602 # if __cpp_lib_constexpr_typeinfo != 202106L
6603 #   error "__cpp_lib_constexpr_typeinfo should have the value 202106L in c++26"
6604 # endif
6605 
6606 # ifndef __cpp_lib_constexpr_utility
6607 #   error "__cpp_lib_constexpr_utility should be defined in c++26"
6608 # endif
6609 # if __cpp_lib_constexpr_utility != 201811L
6610 #   error "__cpp_lib_constexpr_utility should have the value 201811L in c++26"
6611 # endif
6612 
6613 # ifndef __cpp_lib_constexpr_vector
6614 #   error "__cpp_lib_constexpr_vector should be defined in c++26"
6615 # endif
6616 # if __cpp_lib_constexpr_vector != 201907L
6617 #   error "__cpp_lib_constexpr_vector should have the value 201907L in c++26"
6618 # endif
6619 
6620 # if !defined(_LIBCPP_VERSION)
6621 #   ifndef __cpp_lib_constrained_equality
6622 #     error "__cpp_lib_constrained_equality should be defined in c++26"
6623 #   endif
6624 #   if __cpp_lib_constrained_equality != 202403L
6625 #     error "__cpp_lib_constrained_equality should have the value 202403L in c++26"
6626 #   endif
6627 # else // _LIBCPP_VERSION
6628 #   ifdef __cpp_lib_constrained_equality
6629 #     error "__cpp_lib_constrained_equality should not be defined because it is unimplemented in libc++!"
6630 #   endif
6631 # endif
6632 
6633 # ifndef __cpp_lib_containers_ranges
6634 #   error "__cpp_lib_containers_ranges should be defined in c++26"
6635 # endif
6636 # if __cpp_lib_containers_ranges != 202202L
6637 #   error "__cpp_lib_containers_ranges should have the value 202202L in c++26"
6638 # endif
6639 
6640 # if !defined(_LIBCPP_VERSION)
6641 #   ifndef __cpp_lib_copyable_function
6642 #     error "__cpp_lib_copyable_function should be defined in c++26"
6643 #   endif
6644 #   if __cpp_lib_copyable_function != 202306L
6645 #     error "__cpp_lib_copyable_function should have the value 202306L in c++26"
6646 #   endif
6647 # else // _LIBCPP_VERSION
6648 #   ifdef __cpp_lib_copyable_function
6649 #     error "__cpp_lib_copyable_function should not be defined because it is unimplemented in libc++!"
6650 #   endif
6651 # endif
6652 
6653 # ifndef __cpp_lib_coroutine
6654 #   error "__cpp_lib_coroutine should be defined in c++26"
6655 # endif
6656 # if __cpp_lib_coroutine != 201902L
6657 #   error "__cpp_lib_coroutine should have the value 201902L in c++26"
6658 # endif
6659 
6660 # if !defined(_LIBCPP_VERSION)
6661 #   ifndef __cpp_lib_debugging
6662 #     error "__cpp_lib_debugging should be defined in c++26"
6663 #   endif
6664 #   if __cpp_lib_debugging != 202311L
6665 #     error "__cpp_lib_debugging should have the value 202311L in c++26"
6666 #   endif
6667 # else // _LIBCPP_VERSION
6668 #   ifdef __cpp_lib_debugging
6669 #     error "__cpp_lib_debugging should not be defined because it is unimplemented in libc++!"
6670 #   endif
6671 # endif
6672 
6673 # if !defined(_LIBCPP_VERSION)
6674 #   ifndef __cpp_lib_default_template_type_for_algorithm_values
6675 #     error "__cpp_lib_default_template_type_for_algorithm_values should be defined in c++26"
6676 #   endif
6677 #   if __cpp_lib_default_template_type_for_algorithm_values != 202403L
6678 #     error "__cpp_lib_default_template_type_for_algorithm_values should have the value 202403L in c++26"
6679 #   endif
6680 # else // _LIBCPP_VERSION
6681 #   ifdef __cpp_lib_default_template_type_for_algorithm_values
6682 #     error "__cpp_lib_default_template_type_for_algorithm_values should not be defined because it is unimplemented in libc++!"
6683 #   endif
6684 # endif
6685 
6686 # if TEST_STD_VER > 17 && defined(__cpp_impl_destroying_delete) && __cpp_impl_destroying_delete >= 201806L
6687 #   ifndef __cpp_lib_destroying_delete
6688 #     error "__cpp_lib_destroying_delete should be defined in c++26"
6689 #   endif
6690 #   if __cpp_lib_destroying_delete != 201806L
6691 #     error "__cpp_lib_destroying_delete should have the value 201806L in c++26"
6692 #   endif
6693 # else
6694 #   ifdef __cpp_lib_destroying_delete
6695 #     error "__cpp_lib_destroying_delete should not be defined when the requirement 'TEST_STD_VER > 17 && defined(__cpp_impl_destroying_delete) && __cpp_impl_destroying_delete >= 201806L' is not met!"
6696 #   endif
6697 # endif
6698 
6699 # ifndef __cpp_lib_enable_shared_from_this
6700 #   error "__cpp_lib_enable_shared_from_this should be defined in c++26"
6701 # endif
6702 # if __cpp_lib_enable_shared_from_this != 201603L
6703 #   error "__cpp_lib_enable_shared_from_this should have the value 201603L in c++26"
6704 # endif
6705 
6706 # ifndef __cpp_lib_endian
6707 #   error "__cpp_lib_endian should be defined in c++26"
6708 # endif
6709 # if __cpp_lib_endian != 201907L
6710 #   error "__cpp_lib_endian should have the value 201907L in c++26"
6711 # endif
6712 
6713 # ifndef __cpp_lib_erase_if
6714 #   error "__cpp_lib_erase_if should be defined in c++26"
6715 # endif
6716 # if __cpp_lib_erase_if != 202002L
6717 #   error "__cpp_lib_erase_if should have the value 202002L in c++26"
6718 # endif
6719 
6720 # ifndef __cpp_lib_exchange_function
6721 #   error "__cpp_lib_exchange_function should be defined in c++26"
6722 # endif
6723 # if __cpp_lib_exchange_function != 201304L
6724 #   error "__cpp_lib_exchange_function should have the value 201304L in c++26"
6725 # endif
6726 
6727 # if !defined(_LIBCPP_VERSION)
6728 #   ifndef __cpp_lib_execution
6729 #     error "__cpp_lib_execution should be defined in c++26"
6730 #   endif
6731 #   if __cpp_lib_execution != 201902L
6732 #     error "__cpp_lib_execution should have the value 201902L in c++26"
6733 #   endif
6734 # else // _LIBCPP_VERSION
6735 #   ifdef __cpp_lib_execution
6736 #     error "__cpp_lib_execution should not be defined because it is unimplemented in libc++!"
6737 #   endif
6738 # endif
6739 
6740 # ifndef __cpp_lib_expected
6741 #   error "__cpp_lib_expected should be defined in c++26"
6742 # endif
6743 # if __cpp_lib_expected != 202211L
6744 #   error "__cpp_lib_expected should have the value 202211L in c++26"
6745 # endif
6746 
6747 # if !defined(_LIBCPP_VERSION) || (!defined(_LIBCPP_HAS_NO_FILESYSTEM) && _LIBCPP_AVAILABILITY_HAS_FILESYSTEM_LIBRARY)
6748 #   ifndef __cpp_lib_filesystem
6749 #     error "__cpp_lib_filesystem should be defined in c++26"
6750 #   endif
6751 #   if __cpp_lib_filesystem != 201703L
6752 #     error "__cpp_lib_filesystem should have the value 201703L in c++26"
6753 #   endif
6754 # else
6755 #   ifdef __cpp_lib_filesystem
6756 #     error "__cpp_lib_filesystem should not be defined when the requirement '!defined(_LIBCPP_VERSION) || (!defined(_LIBCPP_HAS_NO_FILESYSTEM) && _LIBCPP_AVAILABILITY_HAS_FILESYSTEM_LIBRARY)' is not met!"
6757 #   endif
6758 # endif
6759 
6760 # ifndef __cpp_lib_format
6761 #   error "__cpp_lib_format should be defined in c++26"
6762 # endif
6763 # if __cpp_lib_format != 202110L
6764 #   error "__cpp_lib_format should have the value 202110L in c++26"
6765 # endif
6766 
6767 # if !defined(_LIBCPP_VERSION)
6768 #   ifndef __cpp_lib_format_path
6769 #     error "__cpp_lib_format_path should be defined in c++26"
6770 #   endif
6771 #   if __cpp_lib_format_path != 202403L
6772 #     error "__cpp_lib_format_path should have the value 202403L in c++26"
6773 #   endif
6774 # else // _LIBCPP_VERSION
6775 #   ifdef __cpp_lib_format_path
6776 #     error "__cpp_lib_format_path should not be defined because it is unimplemented in libc++!"
6777 #   endif
6778 # endif
6779 
6780 # ifndef __cpp_lib_format_ranges
6781 #   error "__cpp_lib_format_ranges should be defined in c++26"
6782 # endif
6783 # if __cpp_lib_format_ranges != 202207L
6784 #   error "__cpp_lib_format_ranges should have the value 202207L in c++26"
6785 # endif
6786 
6787 # ifndef __cpp_lib_format_uchar
6788 #   error "__cpp_lib_format_uchar should be defined in c++26"
6789 # endif
6790 # if __cpp_lib_format_uchar != 202311L
6791 #   error "__cpp_lib_format_uchar should have the value 202311L in c++26"
6792 # endif
6793 
6794 # if !defined(_LIBCPP_VERSION)
6795 #   ifndef __cpp_lib_formatters
6796 #     error "__cpp_lib_formatters should be defined in c++26"
6797 #   endif
6798 #   if __cpp_lib_formatters != 202302L
6799 #     error "__cpp_lib_formatters should have the value 202302L in c++26"
6800 #   endif
6801 # else // _LIBCPP_VERSION
6802 #   ifdef __cpp_lib_formatters
6803 #     error "__cpp_lib_formatters should not be defined because it is unimplemented in libc++!"
6804 #   endif
6805 # endif
6806 
6807 # ifndef __cpp_lib_forward_like
6808 #   error "__cpp_lib_forward_like should be defined in c++26"
6809 # endif
6810 # if __cpp_lib_forward_like != 202207L
6811 #   error "__cpp_lib_forward_like should have the value 202207L in c++26"
6812 # endif
6813 
6814 # if !defined(_LIBCPP_VERSION)
6815 #   ifndef __cpp_lib_freestanding_algorithm
6816 #     error "__cpp_lib_freestanding_algorithm should be defined in c++26"
6817 #   endif
6818 #   if __cpp_lib_freestanding_algorithm != 202311L
6819 #     error "__cpp_lib_freestanding_algorithm should have the value 202311L in c++26"
6820 #   endif
6821 # else // _LIBCPP_VERSION
6822 #   ifdef __cpp_lib_freestanding_algorithm
6823 #     error "__cpp_lib_freestanding_algorithm should not be defined because it is unimplemented in libc++!"
6824 #   endif
6825 # endif
6826 
6827 # if !defined(_LIBCPP_VERSION)
6828 #   ifndef __cpp_lib_freestanding_array
6829 #     error "__cpp_lib_freestanding_array should be defined in c++26"
6830 #   endif
6831 #   if __cpp_lib_freestanding_array != 202311L
6832 #     error "__cpp_lib_freestanding_array should have the value 202311L in c++26"
6833 #   endif
6834 # else // _LIBCPP_VERSION
6835 #   ifdef __cpp_lib_freestanding_array
6836 #     error "__cpp_lib_freestanding_array should not be defined because it is unimplemented in libc++!"
6837 #   endif
6838 # endif
6839 
6840 # if !defined(_LIBCPP_VERSION)
6841 #   ifndef __cpp_lib_freestanding_cstring
6842 #     error "__cpp_lib_freestanding_cstring should be defined in c++26"
6843 #   endif
6844 #   if __cpp_lib_freestanding_cstring != 202306L
6845 #     error "__cpp_lib_freestanding_cstring should have the value 202306L in c++26"
6846 #   endif
6847 # else // _LIBCPP_VERSION
6848 #   ifdef __cpp_lib_freestanding_cstring
6849 #     error "__cpp_lib_freestanding_cstring should not be defined because it is unimplemented in libc++!"
6850 #   endif
6851 # endif
6852 
6853 # if !defined(_LIBCPP_VERSION)
6854 #   ifndef __cpp_lib_freestanding_expected
6855 #     error "__cpp_lib_freestanding_expected should be defined in c++26"
6856 #   endif
6857 #   if __cpp_lib_freestanding_expected != 202311L
6858 #     error "__cpp_lib_freestanding_expected should have the value 202311L in c++26"
6859 #   endif
6860 # else // _LIBCPP_VERSION
6861 #   ifdef __cpp_lib_freestanding_expected
6862 #     error "__cpp_lib_freestanding_expected should not be defined because it is unimplemented in libc++!"
6863 #   endif
6864 # endif
6865 
6866 # if !defined(_LIBCPP_VERSION)
6867 #   ifndef __cpp_lib_freestanding_mdspan
6868 #     error "__cpp_lib_freestanding_mdspan should be defined in c++26"
6869 #   endif
6870 #   if __cpp_lib_freestanding_mdspan != 202311L
6871 #     error "__cpp_lib_freestanding_mdspan should have the value 202311L in c++26"
6872 #   endif
6873 # else // _LIBCPP_VERSION
6874 #   ifdef __cpp_lib_freestanding_mdspan
6875 #     error "__cpp_lib_freestanding_mdspan should not be defined because it is unimplemented in libc++!"
6876 #   endif
6877 # endif
6878 
6879 # if !defined(_LIBCPP_VERSION)
6880 #   ifndef __cpp_lib_freestanding_optional
6881 #     error "__cpp_lib_freestanding_optional should be defined in c++26"
6882 #   endif
6883 #   if __cpp_lib_freestanding_optional != 202311L
6884 #     error "__cpp_lib_freestanding_optional should have the value 202311L in c++26"
6885 #   endif
6886 # else // _LIBCPP_VERSION
6887 #   ifdef __cpp_lib_freestanding_optional
6888 #     error "__cpp_lib_freestanding_optional should not be defined because it is unimplemented in libc++!"
6889 #   endif
6890 # endif
6891 
6892 # if !defined(_LIBCPP_VERSION)
6893 #   ifndef __cpp_lib_freestanding_string_view
6894 #     error "__cpp_lib_freestanding_string_view should be defined in c++26"
6895 #   endif
6896 #   if __cpp_lib_freestanding_string_view != 202311L
6897 #     error "__cpp_lib_freestanding_string_view should have the value 202311L in c++26"
6898 #   endif
6899 # else // _LIBCPP_VERSION
6900 #   ifdef __cpp_lib_freestanding_string_view
6901 #     error "__cpp_lib_freestanding_string_view should not be defined because it is unimplemented in libc++!"
6902 #   endif
6903 # endif
6904 
6905 # if !defined(_LIBCPP_VERSION)
6906 #   ifndef __cpp_lib_freestanding_variant
6907 #     error "__cpp_lib_freestanding_variant should be defined in c++26"
6908 #   endif
6909 #   if __cpp_lib_freestanding_variant != 202311L
6910 #     error "__cpp_lib_freestanding_variant should have the value 202311L in c++26"
6911 #   endif
6912 # else // _LIBCPP_VERSION
6913 #   ifdef __cpp_lib_freestanding_variant
6914 #     error "__cpp_lib_freestanding_variant should not be defined because it is unimplemented in libc++!"
6915 #   endif
6916 # endif
6917 
6918 # if !defined(_LIBCPP_VERSION) || (!defined(_LIBCPP_HAS_NO_FILESYSTEM) && !defined(_LIBCPP_HAS_NO_LOCALIZATION))
6919 #   ifndef __cpp_lib_fstream_native_handle
6920 #     error "__cpp_lib_fstream_native_handle should be defined in c++26"
6921 #   endif
6922 #   if __cpp_lib_fstream_native_handle != 202306L
6923 #     error "__cpp_lib_fstream_native_handle should have the value 202306L in c++26"
6924 #   endif
6925 # else
6926 #   ifdef __cpp_lib_fstream_native_handle
6927 #     error "__cpp_lib_fstream_native_handle should not be defined when the requirement '!defined(_LIBCPP_VERSION) || (!defined(_LIBCPP_HAS_NO_FILESYSTEM) && !defined(_LIBCPP_HAS_NO_LOCALIZATION))' is not met!"
6928 #   endif
6929 # endif
6930 
6931 # if !defined(_LIBCPP_VERSION)
6932 #   ifndef __cpp_lib_function_ref
6933 #     error "__cpp_lib_function_ref should be defined in c++26"
6934 #   endif
6935 #   if __cpp_lib_function_ref != 202306L
6936 #     error "__cpp_lib_function_ref should have the value 202306L in c++26"
6937 #   endif
6938 # else // _LIBCPP_VERSION
6939 #   ifdef __cpp_lib_function_ref
6940 #     error "__cpp_lib_function_ref should not be defined because it is unimplemented in libc++!"
6941 #   endif
6942 # endif
6943 
6944 # ifndef __cpp_lib_gcd_lcm
6945 #   error "__cpp_lib_gcd_lcm should be defined in c++26"
6946 # endif
6947 # if __cpp_lib_gcd_lcm != 201606L
6948 #   error "__cpp_lib_gcd_lcm should have the value 201606L in c++26"
6949 # endif
6950 
6951 # if !defined(_LIBCPP_VERSION)
6952 #   ifndef __cpp_lib_generate_random
6953 #     error "__cpp_lib_generate_random should be defined in c++26"
6954 #   endif
6955 #   if __cpp_lib_generate_random != 202403L
6956 #     error "__cpp_lib_generate_random should have the value 202403L in c++26"
6957 #   endif
6958 # else // _LIBCPP_VERSION
6959 #   ifdef __cpp_lib_generate_random
6960 #     error "__cpp_lib_generate_random should not be defined because it is unimplemented in libc++!"
6961 #   endif
6962 # endif
6963 
6964 # ifndef __cpp_lib_generic_associative_lookup
6965 #   error "__cpp_lib_generic_associative_lookup should be defined in c++26"
6966 # endif
6967 # if __cpp_lib_generic_associative_lookup != 201304L
6968 #   error "__cpp_lib_generic_associative_lookup should have the value 201304L in c++26"
6969 # endif
6970 
6971 # ifndef __cpp_lib_generic_unordered_lookup
6972 #   error "__cpp_lib_generic_unordered_lookup should be defined in c++26"
6973 # endif
6974 # if __cpp_lib_generic_unordered_lookup != 201811L
6975 #   error "__cpp_lib_generic_unordered_lookup should have the value 201811L in c++26"
6976 # endif
6977 
6978 # if !defined(_LIBCPP_VERSION) || (defined(__GCC_DESTRUCTIVE_SIZE) && defined(__GCC_CONSTRUCTIVE_SIZE))
6979 #   ifndef __cpp_lib_hardware_interference_size
6980 #     error "__cpp_lib_hardware_interference_size should be defined in c++26"
6981 #   endif
6982 #   if __cpp_lib_hardware_interference_size != 201703L
6983 #     error "__cpp_lib_hardware_interference_size should have the value 201703L in c++26"
6984 #   endif
6985 # else
6986 #   ifdef __cpp_lib_hardware_interference_size
6987 #     error "__cpp_lib_hardware_interference_size should not be defined when the requirement '!defined(_LIBCPP_VERSION) || (defined(__GCC_DESTRUCTIVE_SIZE) && defined(__GCC_CONSTRUCTIVE_SIZE))' is not met!"
6988 #   endif
6989 # endif
6990 
6991 # ifndef __cpp_lib_has_unique_object_representations
6992 #   error "__cpp_lib_has_unique_object_representations should be defined in c++26"
6993 # endif
6994 # if __cpp_lib_has_unique_object_representations != 201606L
6995 #   error "__cpp_lib_has_unique_object_representations should have the value 201606L in c++26"
6996 # endif
6997 
6998 # if !defined(_LIBCPP_VERSION)
6999 #   ifndef __cpp_lib_hazard_pointer
7000 #     error "__cpp_lib_hazard_pointer should be defined in c++26"
7001 #   endif
7002 #   if __cpp_lib_hazard_pointer != 202306L
7003 #     error "__cpp_lib_hazard_pointer should have the value 202306L in c++26"
7004 #   endif
7005 # else // _LIBCPP_VERSION
7006 #   ifdef __cpp_lib_hazard_pointer
7007 #     error "__cpp_lib_hazard_pointer should not be defined because it is unimplemented in libc++!"
7008 #   endif
7009 # endif
7010 
7011 # ifndef __cpp_lib_hypot
7012 #   error "__cpp_lib_hypot should be defined in c++26"
7013 # endif
7014 # if __cpp_lib_hypot != 201603L
7015 #   error "__cpp_lib_hypot should have the value 201603L in c++26"
7016 # endif
7017 
7018 # ifndef __cpp_lib_incomplete_container_elements
7019 #   error "__cpp_lib_incomplete_container_elements should be defined in c++26"
7020 # endif
7021 # if __cpp_lib_incomplete_container_elements != 201505L
7022 #   error "__cpp_lib_incomplete_container_elements should have the value 201505L in c++26"
7023 # endif
7024 
7025 # if !defined(_LIBCPP_VERSION)
7026 #   ifndef __cpp_lib_inplace_vector
7027 #     error "__cpp_lib_inplace_vector should be defined in c++26"
7028 #   endif
7029 #   if __cpp_lib_inplace_vector != 202406L
7030 #     error "__cpp_lib_inplace_vector should have the value 202406L in c++26"
7031 #   endif
7032 # else // _LIBCPP_VERSION
7033 #   ifdef __cpp_lib_inplace_vector
7034 #     error "__cpp_lib_inplace_vector should not be defined because it is unimplemented in libc++!"
7035 #   endif
7036 # endif
7037 
7038 # ifndef __cpp_lib_int_pow2
7039 #   error "__cpp_lib_int_pow2 should be defined in c++26"
7040 # endif
7041 # if __cpp_lib_int_pow2 != 202002L
7042 #   error "__cpp_lib_int_pow2 should have the value 202002L in c++26"
7043 # endif
7044 
7045 # ifndef __cpp_lib_integer_comparison_functions
7046 #   error "__cpp_lib_integer_comparison_functions should be defined in c++26"
7047 # endif
7048 # if __cpp_lib_integer_comparison_functions != 202002L
7049 #   error "__cpp_lib_integer_comparison_functions should have the value 202002L in c++26"
7050 # endif
7051 
7052 # ifndef __cpp_lib_integer_sequence
7053 #   error "__cpp_lib_integer_sequence should be defined in c++26"
7054 # endif
7055 # if __cpp_lib_integer_sequence != 201304L
7056 #   error "__cpp_lib_integer_sequence should have the value 201304L in c++26"
7057 # endif
7058 
7059 # ifndef __cpp_lib_integral_constant_callable
7060 #   error "__cpp_lib_integral_constant_callable should be defined in c++26"
7061 # endif
7062 # if __cpp_lib_integral_constant_callable != 201304L
7063 #   error "__cpp_lib_integral_constant_callable should have the value 201304L in c++26"
7064 # endif
7065 
7066 # ifndef __cpp_lib_interpolate
7067 #   error "__cpp_lib_interpolate should be defined in c++26"
7068 # endif
7069 # if __cpp_lib_interpolate != 201902L
7070 #   error "__cpp_lib_interpolate should have the value 201902L in c++26"
7071 # endif
7072 
7073 # ifndef __cpp_lib_invoke
7074 #   error "__cpp_lib_invoke should be defined in c++26"
7075 # endif
7076 # if __cpp_lib_invoke != 201411L
7077 #   error "__cpp_lib_invoke should have the value 201411L in c++26"
7078 # endif
7079 
7080 # ifndef __cpp_lib_invoke_r
7081 #   error "__cpp_lib_invoke_r should be defined in c++26"
7082 # endif
7083 # if __cpp_lib_invoke_r != 202106L
7084 #   error "__cpp_lib_invoke_r should have the value 202106L in c++26"
7085 # endif
7086 
7087 # ifndef __cpp_lib_ios_noreplace
7088 #   error "__cpp_lib_ios_noreplace should be defined in c++26"
7089 # endif
7090 # if __cpp_lib_ios_noreplace != 202207L
7091 #   error "__cpp_lib_ios_noreplace should have the value 202207L in c++26"
7092 # endif
7093 
7094 # ifndef __cpp_lib_is_aggregate
7095 #   error "__cpp_lib_is_aggregate should be defined in c++26"
7096 # endif
7097 # if __cpp_lib_is_aggregate != 201703L
7098 #   error "__cpp_lib_is_aggregate should have the value 201703L in c++26"
7099 # endif
7100 
7101 # ifndef __cpp_lib_is_constant_evaluated
7102 #   error "__cpp_lib_is_constant_evaluated should be defined in c++26"
7103 # endif
7104 # if __cpp_lib_is_constant_evaluated != 201811L
7105 #   error "__cpp_lib_is_constant_evaluated should have the value 201811L in c++26"
7106 # endif
7107 
7108 # ifndef __cpp_lib_is_final
7109 #   error "__cpp_lib_is_final should be defined in c++26"
7110 # endif
7111 # if __cpp_lib_is_final != 201402L
7112 #   error "__cpp_lib_is_final should have the value 201402L in c++26"
7113 # endif
7114 
7115 # ifndef __cpp_lib_is_invocable
7116 #   error "__cpp_lib_is_invocable should be defined in c++26"
7117 # endif
7118 # if __cpp_lib_is_invocable != 201703L
7119 #   error "__cpp_lib_is_invocable should have the value 201703L in c++26"
7120 # endif
7121 
7122 # if !defined(_LIBCPP_VERSION)
7123 #   ifndef __cpp_lib_is_layout_compatible
7124 #     error "__cpp_lib_is_layout_compatible should be defined in c++26"
7125 #   endif
7126 #   if __cpp_lib_is_layout_compatible != 201907L
7127 #     error "__cpp_lib_is_layout_compatible should have the value 201907L in c++26"
7128 #   endif
7129 # else // _LIBCPP_VERSION
7130 #   ifdef __cpp_lib_is_layout_compatible
7131 #     error "__cpp_lib_is_layout_compatible should not be defined because it is unimplemented in libc++!"
7132 #   endif
7133 # endif
7134 
7135 # ifndef __cpp_lib_is_nothrow_convertible
7136 #   error "__cpp_lib_is_nothrow_convertible should be defined in c++26"
7137 # endif
7138 # if __cpp_lib_is_nothrow_convertible != 201806L
7139 #   error "__cpp_lib_is_nothrow_convertible should have the value 201806L in c++26"
7140 # endif
7141 
7142 # ifndef __cpp_lib_is_null_pointer
7143 #   error "__cpp_lib_is_null_pointer should be defined in c++26"
7144 # endif
7145 # if __cpp_lib_is_null_pointer != 201309L
7146 #   error "__cpp_lib_is_null_pointer should have the value 201309L in c++26"
7147 # endif
7148 
7149 # if !defined(_LIBCPP_VERSION)
7150 #   ifndef __cpp_lib_is_pointer_interconvertible
7151 #     error "__cpp_lib_is_pointer_interconvertible should be defined in c++26"
7152 #   endif
7153 #   if __cpp_lib_is_pointer_interconvertible != 201907L
7154 #     error "__cpp_lib_is_pointer_interconvertible should have the value 201907L in c++26"
7155 #   endif
7156 # else // _LIBCPP_VERSION
7157 #   ifdef __cpp_lib_is_pointer_interconvertible
7158 #     error "__cpp_lib_is_pointer_interconvertible should not be defined because it is unimplemented in libc++!"
7159 #   endif
7160 # endif
7161 
7162 # ifndef __cpp_lib_is_scoped_enum
7163 #   error "__cpp_lib_is_scoped_enum should be defined in c++26"
7164 # endif
7165 # if __cpp_lib_is_scoped_enum != 202011L
7166 #   error "__cpp_lib_is_scoped_enum should have the value 202011L in c++26"
7167 # endif
7168 
7169 # ifndef __cpp_lib_is_swappable
7170 #   error "__cpp_lib_is_swappable should be defined in c++26"
7171 # endif
7172 # if __cpp_lib_is_swappable != 201603L
7173 #   error "__cpp_lib_is_swappable should have the value 201603L in c++26"
7174 # endif
7175 
7176 # if __has_builtin(__builtin_is_virtual_base_of)
7177 #   ifndef __cpp_lib_is_virtual_base_of
7178 #     error "__cpp_lib_is_virtual_base_of should be defined in c++26"
7179 #   endif
7180 #   if __cpp_lib_is_virtual_base_of != 202406L
7181 #     error "__cpp_lib_is_virtual_base_of should have the value 202406L in c++26"
7182 #   endif
7183 # else
7184 #   ifdef __cpp_lib_is_virtual_base_of
7185 #     error "__cpp_lib_is_virtual_base_of should not be defined when the requirement '__has_builtin(__builtin_is_virtual_base_of)' is not met!"
7186 #   endif
7187 # endif
7188 
7189 # if !defined(_LIBCPP_VERSION)
7190 #   ifndef __cpp_lib_is_within_lifetime
7191 #     error "__cpp_lib_is_within_lifetime should be defined in c++26"
7192 #   endif
7193 #   if __cpp_lib_is_within_lifetime != 202306L
7194 #     error "__cpp_lib_is_within_lifetime should have the value 202306L in c++26"
7195 #   endif
7196 # else // _LIBCPP_VERSION
7197 #   ifdef __cpp_lib_is_within_lifetime
7198 #     error "__cpp_lib_is_within_lifetime should not be defined because it is unimplemented in libc++!"
7199 #   endif
7200 # endif
7201 
7202 # if !defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)
7203 #   ifndef __cpp_lib_jthread
7204 #     error "__cpp_lib_jthread should be defined in c++26"
7205 #   endif
7206 #   if __cpp_lib_jthread != 201911L
7207 #     error "__cpp_lib_jthread should have the value 201911L in c++26"
7208 #   endif
7209 # else
7210 #   ifdef __cpp_lib_jthread
7211 #     error "__cpp_lib_jthread should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)' is not met!"
7212 #   endif
7213 # endif
7214 
7215 # if !defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)
7216 #   ifndef __cpp_lib_latch
7217 #     error "__cpp_lib_latch should be defined in c++26"
7218 #   endif
7219 #   if __cpp_lib_latch != 201907L
7220 #     error "__cpp_lib_latch should have the value 201907L in c++26"
7221 #   endif
7222 # else
7223 #   ifdef __cpp_lib_latch
7224 #     error "__cpp_lib_latch should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)' is not met!"
7225 #   endif
7226 # endif
7227 
7228 # ifndef __cpp_lib_launder
7229 #   error "__cpp_lib_launder should be defined in c++26"
7230 # endif
7231 # if __cpp_lib_launder != 201606L
7232 #   error "__cpp_lib_launder should have the value 201606L in c++26"
7233 # endif
7234 
7235 # if !defined(_LIBCPP_VERSION)
7236 #   ifndef __cpp_lib_linalg
7237 #     error "__cpp_lib_linalg should be defined in c++26"
7238 #   endif
7239 #   if __cpp_lib_linalg != 202311L
7240 #     error "__cpp_lib_linalg should have the value 202311L in c++26"
7241 #   endif
7242 # else // _LIBCPP_VERSION
7243 #   ifdef __cpp_lib_linalg
7244 #     error "__cpp_lib_linalg should not be defined because it is unimplemented in libc++!"
7245 #   endif
7246 # endif
7247 
7248 # ifndef __cpp_lib_list_remove_return_type
7249 #   error "__cpp_lib_list_remove_return_type should be defined in c++26"
7250 # endif
7251 # if __cpp_lib_list_remove_return_type != 201806L
7252 #   error "__cpp_lib_list_remove_return_type should have the value 201806L in c++26"
7253 # endif
7254 
7255 # ifndef __cpp_lib_logical_traits
7256 #   error "__cpp_lib_logical_traits should be defined in c++26"
7257 # endif
7258 # if __cpp_lib_logical_traits != 201510L
7259 #   error "__cpp_lib_logical_traits should have the value 201510L in c++26"
7260 # endif
7261 
7262 # ifndef __cpp_lib_make_from_tuple
7263 #   error "__cpp_lib_make_from_tuple should be defined in c++26"
7264 # endif
7265 # if __cpp_lib_make_from_tuple != 201606L
7266 #   error "__cpp_lib_make_from_tuple should have the value 201606L in c++26"
7267 # endif
7268 
7269 # ifndef __cpp_lib_make_reverse_iterator
7270 #   error "__cpp_lib_make_reverse_iterator should be defined in c++26"
7271 # endif
7272 # if __cpp_lib_make_reverse_iterator != 201402L
7273 #   error "__cpp_lib_make_reverse_iterator should have the value 201402L in c++26"
7274 # endif
7275 
7276 # ifndef __cpp_lib_make_unique
7277 #   error "__cpp_lib_make_unique should be defined in c++26"
7278 # endif
7279 # if __cpp_lib_make_unique != 201304L
7280 #   error "__cpp_lib_make_unique should have the value 201304L in c++26"
7281 # endif
7282 
7283 # ifndef __cpp_lib_map_try_emplace
7284 #   error "__cpp_lib_map_try_emplace should be defined in c++26"
7285 # endif
7286 # if __cpp_lib_map_try_emplace != 201411L
7287 #   error "__cpp_lib_map_try_emplace should have the value 201411L in c++26"
7288 # endif
7289 
7290 # ifndef __cpp_lib_math_constants
7291 #   error "__cpp_lib_math_constants should be defined in c++26"
7292 # endif
7293 # if __cpp_lib_math_constants != 201907L
7294 #   error "__cpp_lib_math_constants should have the value 201907L in c++26"
7295 # endif
7296 
7297 # if !defined(_LIBCPP_VERSION)
7298 #   ifndef __cpp_lib_math_special_functions
7299 #     error "__cpp_lib_math_special_functions should be defined in c++26"
7300 #   endif
7301 #   if __cpp_lib_math_special_functions != 201603L
7302 #     error "__cpp_lib_math_special_functions should have the value 201603L in c++26"
7303 #   endif
7304 # else // _LIBCPP_VERSION
7305 #   ifdef __cpp_lib_math_special_functions
7306 #     error "__cpp_lib_math_special_functions should not be defined because it is unimplemented in libc++!"
7307 #   endif
7308 # endif
7309 
7310 # ifndef __cpp_lib_mdspan
7311 #   error "__cpp_lib_mdspan should be defined in c++26"
7312 # endif
7313 # if __cpp_lib_mdspan != 202406L
7314 #   error "__cpp_lib_mdspan should have the value 202406L in c++26"
7315 # endif
7316 
7317 # if !defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_PMR
7318 #   ifndef __cpp_lib_memory_resource
7319 #     error "__cpp_lib_memory_resource should be defined in c++26"
7320 #   endif
7321 #   if __cpp_lib_memory_resource != 201603L
7322 #     error "__cpp_lib_memory_resource should have the value 201603L in c++26"
7323 #   endif
7324 # else
7325 #   ifdef __cpp_lib_memory_resource
7326 #     error "__cpp_lib_memory_resource should not be defined when the requirement '!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_PMR' is not met!"
7327 #   endif
7328 # endif
7329 
7330 # ifndef __cpp_lib_modules
7331 #   error "__cpp_lib_modules should be defined in c++26"
7332 # endif
7333 # if __cpp_lib_modules != 202207L
7334 #   error "__cpp_lib_modules should have the value 202207L in c++26"
7335 # endif
7336 
7337 # ifndef __cpp_lib_move_iterator_concept
7338 #   error "__cpp_lib_move_iterator_concept should be defined in c++26"
7339 # endif
7340 # if __cpp_lib_move_iterator_concept != 202207L
7341 #   error "__cpp_lib_move_iterator_concept should have the value 202207L in c++26"
7342 # endif
7343 
7344 # if !defined(_LIBCPP_VERSION)
7345 #   ifndef __cpp_lib_move_only_function
7346 #     error "__cpp_lib_move_only_function should be defined in c++26"
7347 #   endif
7348 #   if __cpp_lib_move_only_function != 202110L
7349 #     error "__cpp_lib_move_only_function should have the value 202110L in c++26"
7350 #   endif
7351 # else // _LIBCPP_VERSION
7352 #   ifdef __cpp_lib_move_only_function
7353 #     error "__cpp_lib_move_only_function should not be defined because it is unimplemented in libc++!"
7354 #   endif
7355 # endif
7356 
7357 # ifndef __cpp_lib_node_extract
7358 #   error "__cpp_lib_node_extract should be defined in c++26"
7359 # endif
7360 # if __cpp_lib_node_extract != 201606L
7361 #   error "__cpp_lib_node_extract should have the value 201606L in c++26"
7362 # endif
7363 
7364 # ifndef __cpp_lib_nonmember_container_access
7365 #   error "__cpp_lib_nonmember_container_access should be defined in c++26"
7366 # endif
7367 # if __cpp_lib_nonmember_container_access != 201411L
7368 #   error "__cpp_lib_nonmember_container_access should have the value 201411L in c++26"
7369 # endif
7370 
7371 # ifndef __cpp_lib_not_fn
7372 #   error "__cpp_lib_not_fn should be defined in c++26"
7373 # endif
7374 # if __cpp_lib_not_fn != 201603L
7375 #   error "__cpp_lib_not_fn should have the value 201603L in c++26"
7376 # endif
7377 
7378 # ifndef __cpp_lib_null_iterators
7379 #   error "__cpp_lib_null_iterators should be defined in c++26"
7380 # endif
7381 # if __cpp_lib_null_iterators != 201304L
7382 #   error "__cpp_lib_null_iterators should have the value 201304L in c++26"
7383 # endif
7384 
7385 # ifndef __cpp_lib_optional
7386 #   error "__cpp_lib_optional should be defined in c++26"
7387 # endif
7388 # if __cpp_lib_optional != 202110L
7389 #   error "__cpp_lib_optional should have the value 202110L in c++26"
7390 # endif
7391 
7392 # if !defined(_LIBCPP_VERSION)
7393 #   ifndef __cpp_lib_optional_range_support
7394 #     error "__cpp_lib_optional_range_support should be defined in c++26"
7395 #   endif
7396 #   if __cpp_lib_optional_range_support != 202406L
7397 #     error "__cpp_lib_optional_range_support should have the value 202406L in c++26"
7398 #   endif
7399 # else // _LIBCPP_VERSION
7400 #   ifdef __cpp_lib_optional_range_support
7401 #     error "__cpp_lib_optional_range_support should not be defined because it is unimplemented in libc++!"
7402 #   endif
7403 # endif
7404 
7405 # ifndef __cpp_lib_out_ptr
7406 #   error "__cpp_lib_out_ptr should be defined in c++26"
7407 # endif
7408 # if __cpp_lib_out_ptr != 202311L
7409 #   error "__cpp_lib_out_ptr should have the value 202311L in c++26"
7410 # endif
7411 
7412 # if !defined(_LIBCPP_VERSION)
7413 #   ifndef __cpp_lib_parallel_algorithm
7414 #     error "__cpp_lib_parallel_algorithm should be defined in c++26"
7415 #   endif
7416 #   if __cpp_lib_parallel_algorithm != 201603L
7417 #     error "__cpp_lib_parallel_algorithm should have the value 201603L in c++26"
7418 #   endif
7419 # else // _LIBCPP_VERSION
7420 #   ifdef __cpp_lib_parallel_algorithm
7421 #     error "__cpp_lib_parallel_algorithm should not be defined because it is unimplemented in libc++!"
7422 #   endif
7423 # endif
7424 
7425 # if !defined(_LIBCPP_VERSION)
7426 #   ifndef __cpp_lib_philox_engine
7427 #     error "__cpp_lib_philox_engine should be defined in c++26"
7428 #   endif
7429 #   if __cpp_lib_philox_engine != 202406L
7430 #     error "__cpp_lib_philox_engine should have the value 202406L in c++26"
7431 #   endif
7432 # else // _LIBCPP_VERSION
7433 #   ifdef __cpp_lib_philox_engine
7434 #     error "__cpp_lib_philox_engine should not be defined because it is unimplemented in libc++!"
7435 #   endif
7436 # endif
7437 
7438 # if !defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_PMR
7439 #   ifndef __cpp_lib_polymorphic_allocator
7440 #     error "__cpp_lib_polymorphic_allocator should be defined in c++26"
7441 #   endif
7442 #   if __cpp_lib_polymorphic_allocator != 201902L
7443 #     error "__cpp_lib_polymorphic_allocator should have the value 201902L in c++26"
7444 #   endif
7445 # else
7446 #   ifdef __cpp_lib_polymorphic_allocator
7447 #     error "__cpp_lib_polymorphic_allocator should not be defined when the requirement '!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_PMR' is not met!"
7448 #   endif
7449 # endif
7450 
7451 # ifndef __cpp_lib_print
7452 #   error "__cpp_lib_print should be defined in c++26"
7453 # endif
7454 # if __cpp_lib_print != 202207L
7455 #   error "__cpp_lib_print should have the value 202207L in c++26"
7456 # endif
7457 
7458 # if !defined(_LIBCPP_VERSION) || !defined(_LIBCPP_HAS_NO_LOCALIZATION)
7459 #   ifndef __cpp_lib_quoted_string_io
7460 #     error "__cpp_lib_quoted_string_io should be defined in c++26"
7461 #   endif
7462 #   if __cpp_lib_quoted_string_io != 201304L
7463 #     error "__cpp_lib_quoted_string_io should have the value 201304L in c++26"
7464 #   endif
7465 # else
7466 #   ifdef __cpp_lib_quoted_string_io
7467 #     error "__cpp_lib_quoted_string_io should not be defined when the requirement '!defined(_LIBCPP_VERSION) || !defined(_LIBCPP_HAS_NO_LOCALIZATION)' is not met!"
7468 #   endif
7469 # endif
7470 
7471 # ifndef __cpp_lib_ranges
7472 #   error "__cpp_lib_ranges should be defined in c++26"
7473 # endif
7474 # if __cpp_lib_ranges != 202406L
7475 #   error "__cpp_lib_ranges should have the value 202406L in c++26"
7476 # endif
7477 
7478 # if !defined(_LIBCPP_VERSION)
7479 #   ifndef __cpp_lib_ranges_as_const
7480 #     error "__cpp_lib_ranges_as_const should be defined in c++26"
7481 #   endif
7482 #   if __cpp_lib_ranges_as_const != 202207L
7483 #     error "__cpp_lib_ranges_as_const should have the value 202207L in c++26"
7484 #   endif
7485 # else // _LIBCPP_VERSION
7486 #   ifdef __cpp_lib_ranges_as_const
7487 #     error "__cpp_lib_ranges_as_const should not be defined because it is unimplemented in libc++!"
7488 #   endif
7489 # endif
7490 
7491 # ifndef __cpp_lib_ranges_as_rvalue
7492 #   error "__cpp_lib_ranges_as_rvalue should be defined in c++26"
7493 # endif
7494 # if __cpp_lib_ranges_as_rvalue != 202207L
7495 #   error "__cpp_lib_ranges_as_rvalue should have the value 202207L in c++26"
7496 # endif
7497 
7498 # if !defined(_LIBCPP_VERSION)
7499 #   ifndef __cpp_lib_ranges_chunk
7500 #     error "__cpp_lib_ranges_chunk should be defined in c++26"
7501 #   endif
7502 #   if __cpp_lib_ranges_chunk != 202202L
7503 #     error "__cpp_lib_ranges_chunk should have the value 202202L in c++26"
7504 #   endif
7505 # else // _LIBCPP_VERSION
7506 #   ifdef __cpp_lib_ranges_chunk
7507 #     error "__cpp_lib_ranges_chunk should not be defined because it is unimplemented in libc++!"
7508 #   endif
7509 # endif
7510 
7511 # ifndef __cpp_lib_ranges_chunk_by
7512 #   error "__cpp_lib_ranges_chunk_by should be defined in c++26"
7513 # endif
7514 # if __cpp_lib_ranges_chunk_by != 202202L
7515 #   error "__cpp_lib_ranges_chunk_by should have the value 202202L in c++26"
7516 # endif
7517 
7518 # if !defined(_LIBCPP_VERSION)
7519 #   ifndef __cpp_lib_ranges_concat
7520 #     error "__cpp_lib_ranges_concat should be defined in c++26"
7521 #   endif
7522 #   if __cpp_lib_ranges_concat != 202403L
7523 #     error "__cpp_lib_ranges_concat should have the value 202403L in c++26"
7524 #   endif
7525 # else // _LIBCPP_VERSION
7526 #   ifdef __cpp_lib_ranges_concat
7527 #     error "__cpp_lib_ranges_concat should not be defined because it is unimplemented in libc++!"
7528 #   endif
7529 # endif
7530 
7531 # ifndef __cpp_lib_ranges_contains
7532 #   error "__cpp_lib_ranges_contains should be defined in c++26"
7533 # endif
7534 # if __cpp_lib_ranges_contains != 202207L
7535 #   error "__cpp_lib_ranges_contains should have the value 202207L in c++26"
7536 # endif
7537 
7538 # ifndef __cpp_lib_ranges_find_last
7539 #   error "__cpp_lib_ranges_find_last should be defined in c++26"
7540 # endif
7541 # if __cpp_lib_ranges_find_last != 202207L
7542 #   error "__cpp_lib_ranges_find_last should have the value 202207L in c++26"
7543 # endif
7544 
7545 # if !defined(_LIBCPP_VERSION)
7546 #   ifndef __cpp_lib_ranges_iota
7547 #     error "__cpp_lib_ranges_iota should be defined in c++26"
7548 #   endif
7549 #   if __cpp_lib_ranges_iota != 202202L
7550 #     error "__cpp_lib_ranges_iota should have the value 202202L in c++26"
7551 #   endif
7552 # else // _LIBCPP_VERSION
7553 #   ifdef __cpp_lib_ranges_iota
7554 #     error "__cpp_lib_ranges_iota should not be defined because it is unimplemented in libc++!"
7555 #   endif
7556 # endif
7557 
7558 # if !defined(_LIBCPP_VERSION)
7559 #   ifndef __cpp_lib_ranges_join_with
7560 #     error "__cpp_lib_ranges_join_with should be defined in c++26"
7561 #   endif
7562 #   if __cpp_lib_ranges_join_with != 202202L
7563 #     error "__cpp_lib_ranges_join_with should have the value 202202L in c++26"
7564 #   endif
7565 # else // _LIBCPP_VERSION
7566 #   ifdef __cpp_lib_ranges_join_with
7567 #     error "__cpp_lib_ranges_join_with should not be defined because it is unimplemented in libc++!"
7568 #   endif
7569 # endif
7570 
7571 # ifndef __cpp_lib_ranges_repeat
7572 #   error "__cpp_lib_ranges_repeat should be defined in c++26"
7573 # endif
7574 # if __cpp_lib_ranges_repeat != 202207L
7575 #   error "__cpp_lib_ranges_repeat should have the value 202207L in c++26"
7576 # endif
7577 
7578 # if !defined(_LIBCPP_VERSION)
7579 #   ifndef __cpp_lib_ranges_slide
7580 #     error "__cpp_lib_ranges_slide should be defined in c++26"
7581 #   endif
7582 #   if __cpp_lib_ranges_slide != 202202L
7583 #     error "__cpp_lib_ranges_slide should have the value 202202L in c++26"
7584 #   endif
7585 # else // _LIBCPP_VERSION
7586 #   ifdef __cpp_lib_ranges_slide
7587 #     error "__cpp_lib_ranges_slide should not be defined because it is unimplemented in libc++!"
7588 #   endif
7589 # endif
7590 
7591 # ifndef __cpp_lib_ranges_starts_ends_with
7592 #   error "__cpp_lib_ranges_starts_ends_with should be defined in c++26"
7593 # endif
7594 # if __cpp_lib_ranges_starts_ends_with != 202106L
7595 #   error "__cpp_lib_ranges_starts_ends_with should have the value 202106L in c++26"
7596 # endif
7597 
7598 # ifndef __cpp_lib_ranges_to_container
7599 #   error "__cpp_lib_ranges_to_container should be defined in c++26"
7600 # endif
7601 # if __cpp_lib_ranges_to_container != 202202L
7602 #   error "__cpp_lib_ranges_to_container should have the value 202202L in c++26"
7603 # endif
7604 
7605 # if !defined(_LIBCPP_VERSION)
7606 #   ifndef __cpp_lib_ranges_zip
7607 #     error "__cpp_lib_ranges_zip should be defined in c++26"
7608 #   endif
7609 #   if __cpp_lib_ranges_zip != 202110L
7610 #     error "__cpp_lib_ranges_zip should have the value 202110L in c++26"
7611 #   endif
7612 # else // _LIBCPP_VERSION
7613 #   ifdef __cpp_lib_ranges_zip
7614 #     error "__cpp_lib_ranges_zip should not be defined because it is unimplemented in libc++!"
7615 #   endif
7616 # endif
7617 
7618 # ifndef __cpp_lib_ratio
7619 #   error "__cpp_lib_ratio should be defined in c++26"
7620 # endif
7621 # if __cpp_lib_ratio != 202306L
7622 #   error "__cpp_lib_ratio should have the value 202306L in c++26"
7623 # endif
7624 
7625 # ifndef __cpp_lib_raw_memory_algorithms
7626 #   error "__cpp_lib_raw_memory_algorithms should be defined in c++26"
7627 # endif
7628 # if __cpp_lib_raw_memory_algorithms != 201606L
7629 #   error "__cpp_lib_raw_memory_algorithms should have the value 201606L in c++26"
7630 # endif
7631 
7632 # if !defined(_LIBCPP_VERSION)
7633 #   ifndef __cpp_lib_rcu
7634 #     error "__cpp_lib_rcu should be defined in c++26"
7635 #   endif
7636 #   if __cpp_lib_rcu != 202306L
7637 #     error "__cpp_lib_rcu should have the value 202306L in c++26"
7638 #   endif
7639 # else // _LIBCPP_VERSION
7640 #   ifdef __cpp_lib_rcu
7641 #     error "__cpp_lib_rcu should not be defined because it is unimplemented in libc++!"
7642 #   endif
7643 # endif
7644 
7645 # if !defined(_LIBCPP_VERSION)
7646 #   ifndef __cpp_lib_reference_from_temporary
7647 #     error "__cpp_lib_reference_from_temporary should be defined in c++26"
7648 #   endif
7649 #   if __cpp_lib_reference_from_temporary != 202202L
7650 #     error "__cpp_lib_reference_from_temporary should have the value 202202L in c++26"
7651 #   endif
7652 # else // _LIBCPP_VERSION
7653 #   ifdef __cpp_lib_reference_from_temporary
7654 #     error "__cpp_lib_reference_from_temporary should not be defined because it is unimplemented in libc++!"
7655 #   endif
7656 # endif
7657 
7658 # ifndef __cpp_lib_reference_wrapper
7659 #   error "__cpp_lib_reference_wrapper should be defined in c++26"
7660 # endif
7661 # if __cpp_lib_reference_wrapper != 202403L
7662 #   error "__cpp_lib_reference_wrapper should have the value 202403L in c++26"
7663 # endif
7664 
7665 # ifndef __cpp_lib_remove_cvref
7666 #   error "__cpp_lib_remove_cvref should be defined in c++26"
7667 # endif
7668 # if __cpp_lib_remove_cvref != 201711L
7669 #   error "__cpp_lib_remove_cvref should have the value 201711L in c++26"
7670 # endif
7671 
7672 # ifndef __cpp_lib_result_of_sfinae
7673 #   error "__cpp_lib_result_of_sfinae should be defined in c++26"
7674 # endif
7675 # if __cpp_lib_result_of_sfinae != 201210L
7676 #   error "__cpp_lib_result_of_sfinae should have the value 201210L in c++26"
7677 # endif
7678 
7679 # ifndef __cpp_lib_robust_nonmodifying_seq_ops
7680 #   error "__cpp_lib_robust_nonmodifying_seq_ops should be defined in c++26"
7681 # endif
7682 # if __cpp_lib_robust_nonmodifying_seq_ops != 201304L
7683 #   error "__cpp_lib_robust_nonmodifying_seq_ops should have the value 201304L in c++26"
7684 # endif
7685 
7686 # ifndef __cpp_lib_sample
7687 #   error "__cpp_lib_sample should be defined in c++26"
7688 # endif
7689 # if __cpp_lib_sample != 201603L
7690 #   error "__cpp_lib_sample should have the value 201603L in c++26"
7691 # endif
7692 
7693 # ifndef __cpp_lib_saturation_arithmetic
7694 #   error "__cpp_lib_saturation_arithmetic should be defined in c++26"
7695 # endif
7696 # if __cpp_lib_saturation_arithmetic != 202311L
7697 #   error "__cpp_lib_saturation_arithmetic should have the value 202311L in c++26"
7698 # endif
7699 
7700 # if !defined(_LIBCPP_HAS_NO_THREADS)
7701 #   ifndef __cpp_lib_scoped_lock
7702 #     error "__cpp_lib_scoped_lock should be defined in c++26"
7703 #   endif
7704 #   if __cpp_lib_scoped_lock != 201703L
7705 #     error "__cpp_lib_scoped_lock should have the value 201703L in c++26"
7706 #   endif
7707 # else
7708 #   ifdef __cpp_lib_scoped_lock
7709 #     error "__cpp_lib_scoped_lock should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS)' is not met!"
7710 #   endif
7711 # endif
7712 
7713 # if !defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)
7714 #   ifndef __cpp_lib_semaphore
7715 #     error "__cpp_lib_semaphore should be defined in c++26"
7716 #   endif
7717 #   if __cpp_lib_semaphore != 201907L
7718 #     error "__cpp_lib_semaphore should have the value 201907L in c++26"
7719 #   endif
7720 # else
7721 #   ifdef __cpp_lib_semaphore
7722 #     error "__cpp_lib_semaphore should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS) && (!defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_SYNC)' is not met!"
7723 #   endif
7724 # endif
7725 
7726 # if !defined(_LIBCPP_VERSION)
7727 #   ifndef __cpp_lib_senders
7728 #     error "__cpp_lib_senders should be defined in c++26"
7729 #   endif
7730 #   if __cpp_lib_senders != 202406L
7731 #     error "__cpp_lib_senders should have the value 202406L in c++26"
7732 #   endif
7733 # else // _LIBCPP_VERSION
7734 #   ifdef __cpp_lib_senders
7735 #     error "__cpp_lib_senders should not be defined because it is unimplemented in libc++!"
7736 #   endif
7737 # endif
7738 
7739 # if !defined(_LIBCPP_HAS_NO_THREADS)
7740 #   ifndef __cpp_lib_shared_mutex
7741 #     error "__cpp_lib_shared_mutex should be defined in c++26"
7742 #   endif
7743 #   if __cpp_lib_shared_mutex != 201505L
7744 #     error "__cpp_lib_shared_mutex should have the value 201505L in c++26"
7745 #   endif
7746 # else
7747 #   ifdef __cpp_lib_shared_mutex
7748 #     error "__cpp_lib_shared_mutex should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS)' is not met!"
7749 #   endif
7750 # endif
7751 
7752 # ifndef __cpp_lib_shared_ptr_arrays
7753 #   error "__cpp_lib_shared_ptr_arrays should be defined in c++26"
7754 # endif
7755 # if __cpp_lib_shared_ptr_arrays != 201707L
7756 #   error "__cpp_lib_shared_ptr_arrays should have the value 201707L in c++26"
7757 # endif
7758 
7759 # ifndef __cpp_lib_shared_ptr_weak_type
7760 #   error "__cpp_lib_shared_ptr_weak_type should be defined in c++26"
7761 # endif
7762 # if __cpp_lib_shared_ptr_weak_type != 201606L
7763 #   error "__cpp_lib_shared_ptr_weak_type should have the value 201606L in c++26"
7764 # endif
7765 
7766 # if !defined(_LIBCPP_HAS_NO_THREADS)
7767 #   ifndef __cpp_lib_shared_timed_mutex
7768 #     error "__cpp_lib_shared_timed_mutex should be defined in c++26"
7769 #   endif
7770 #   if __cpp_lib_shared_timed_mutex != 201402L
7771 #     error "__cpp_lib_shared_timed_mutex should have the value 201402L in c++26"
7772 #   endif
7773 # else
7774 #   ifdef __cpp_lib_shared_timed_mutex
7775 #     error "__cpp_lib_shared_timed_mutex should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_THREADS)' is not met!"
7776 #   endif
7777 # endif
7778 
7779 # ifndef __cpp_lib_shift
7780 #   error "__cpp_lib_shift should be defined in c++26"
7781 # endif
7782 # if __cpp_lib_shift != 201806L
7783 #   error "__cpp_lib_shift should have the value 201806L in c++26"
7784 # endif
7785 
7786 # if !defined(_LIBCPP_VERSION)
7787 #   ifndef __cpp_lib_smart_ptr_for_overwrite
7788 #     error "__cpp_lib_smart_ptr_for_overwrite should be defined in c++26"
7789 #   endif
7790 #   if __cpp_lib_smart_ptr_for_overwrite != 202002L
7791 #     error "__cpp_lib_smart_ptr_for_overwrite should have the value 202002L in c++26"
7792 #   endif
7793 # else // _LIBCPP_VERSION
7794 #   ifdef __cpp_lib_smart_ptr_for_overwrite
7795 #     error "__cpp_lib_smart_ptr_for_overwrite should not be defined because it is unimplemented in libc++!"
7796 #   endif
7797 # endif
7798 
7799 # if !defined(_LIBCPP_VERSION)
7800 #   ifndef __cpp_lib_smart_ptr_owner_equality
7801 #     error "__cpp_lib_smart_ptr_owner_equality should be defined in c++26"
7802 #   endif
7803 #   if __cpp_lib_smart_ptr_owner_equality != 202306L
7804 #     error "__cpp_lib_smart_ptr_owner_equality should have the value 202306L in c++26"
7805 #   endif
7806 # else // _LIBCPP_VERSION
7807 #   ifdef __cpp_lib_smart_ptr_owner_equality
7808 #     error "__cpp_lib_smart_ptr_owner_equality should not be defined because it is unimplemented in libc++!"
7809 #   endif
7810 # endif
7811 
7812 # ifndef __cpp_lib_source_location
7813 #   error "__cpp_lib_source_location should be defined in c++26"
7814 # endif
7815 # if __cpp_lib_source_location != 201907L
7816 #   error "__cpp_lib_source_location should have the value 201907L in c++26"
7817 # endif
7818 
7819 # ifndef __cpp_lib_span
7820 #   error "__cpp_lib_span should be defined in c++26"
7821 # endif
7822 # if __cpp_lib_span != 202002L
7823 #   error "__cpp_lib_span should have the value 202002L in c++26"
7824 # endif
7825 
7826 # ifndef __cpp_lib_span_at
7827 #   error "__cpp_lib_span_at should be defined in c++26"
7828 # endif
7829 # if __cpp_lib_span_at != 202311L
7830 #   error "__cpp_lib_span_at should have the value 202311L in c++26"
7831 # endif
7832 
7833 # ifndef __cpp_lib_span_initializer_list
7834 #   error "__cpp_lib_span_initializer_list should be defined in c++26"
7835 # endif
7836 # if __cpp_lib_span_initializer_list != 202311L
7837 #   error "__cpp_lib_span_initializer_list should have the value 202311L in c++26"
7838 # endif
7839 
7840 # if !defined(_LIBCPP_VERSION)
7841 #   ifndef __cpp_lib_spanstream
7842 #     error "__cpp_lib_spanstream should be defined in c++26"
7843 #   endif
7844 #   if __cpp_lib_spanstream != 202106L
7845 #     error "__cpp_lib_spanstream should have the value 202106L in c++26"
7846 #   endif
7847 # else // _LIBCPP_VERSION
7848 #   ifdef __cpp_lib_spanstream
7849 #     error "__cpp_lib_spanstream should not be defined because it is unimplemented in libc++!"
7850 #   endif
7851 # endif
7852 
7853 # ifndef __cpp_lib_ssize
7854 #   error "__cpp_lib_ssize should be defined in c++26"
7855 # endif
7856 # if __cpp_lib_ssize != 201902L
7857 #   error "__cpp_lib_ssize should have the value 201902L in c++26"
7858 # endif
7859 
7860 # ifndef __cpp_lib_sstream_from_string_view
7861 #   error "__cpp_lib_sstream_from_string_view should be defined in c++26"
7862 # endif
7863 # if __cpp_lib_sstream_from_string_view != 202306L
7864 #   error "__cpp_lib_sstream_from_string_view should have the value 202306L in c++26"
7865 # endif
7866 
7867 # if !defined(_LIBCPP_VERSION)
7868 #   ifndef __cpp_lib_stacktrace
7869 #     error "__cpp_lib_stacktrace should be defined in c++26"
7870 #   endif
7871 #   if __cpp_lib_stacktrace != 202011L
7872 #     error "__cpp_lib_stacktrace should have the value 202011L in c++26"
7873 #   endif
7874 # else // _LIBCPP_VERSION
7875 #   ifdef __cpp_lib_stacktrace
7876 #     error "__cpp_lib_stacktrace should not be defined because it is unimplemented in libc++!"
7877 #   endif
7878 # endif
7879 
7880 # ifndef __cpp_lib_starts_ends_with
7881 #   error "__cpp_lib_starts_ends_with should be defined in c++26"
7882 # endif
7883 # if __cpp_lib_starts_ends_with != 201711L
7884 #   error "__cpp_lib_starts_ends_with should have the value 201711L in c++26"
7885 # endif
7886 
7887 # ifndef __cpp_lib_stdatomic_h
7888 #   error "__cpp_lib_stdatomic_h should be defined in c++26"
7889 # endif
7890 # if __cpp_lib_stdatomic_h != 202011L
7891 #   error "__cpp_lib_stdatomic_h should have the value 202011L in c++26"
7892 # endif
7893 
7894 # ifndef __cpp_lib_string_contains
7895 #   error "__cpp_lib_string_contains should be defined in c++26"
7896 # endif
7897 # if __cpp_lib_string_contains != 202011L
7898 #   error "__cpp_lib_string_contains should have the value 202011L in c++26"
7899 # endif
7900 
7901 # ifndef __cpp_lib_string_resize_and_overwrite
7902 #   error "__cpp_lib_string_resize_and_overwrite should be defined in c++26"
7903 # endif
7904 # if __cpp_lib_string_resize_and_overwrite != 202110L
7905 #   error "__cpp_lib_string_resize_and_overwrite should have the value 202110L in c++26"
7906 # endif
7907 
7908 # ifndef __cpp_lib_string_udls
7909 #   error "__cpp_lib_string_udls should be defined in c++26"
7910 # endif
7911 # if __cpp_lib_string_udls != 201304L
7912 #   error "__cpp_lib_string_udls should have the value 201304L in c++26"
7913 # endif
7914 
7915 # ifndef __cpp_lib_string_view
7916 #   error "__cpp_lib_string_view should be defined in c++26"
7917 # endif
7918 # if __cpp_lib_string_view != 202403L
7919 #   error "__cpp_lib_string_view should have the value 202403L in c++26"
7920 # endif
7921 
7922 # if !defined(_LIBCPP_VERSION)
7923 #   ifndef __cpp_lib_submdspan
7924 #     error "__cpp_lib_submdspan should be defined in c++26"
7925 #   endif
7926 #   if __cpp_lib_submdspan != 202306L
7927 #     error "__cpp_lib_submdspan should have the value 202306L in c++26"
7928 #   endif
7929 # else // _LIBCPP_VERSION
7930 #   ifdef __cpp_lib_submdspan
7931 #     error "__cpp_lib_submdspan should not be defined because it is unimplemented in libc++!"
7932 #   endif
7933 # endif
7934 
7935 # if !defined(_LIBCPP_HAS_NO_EXPERIMENTAL_SYNCSTREAM)
7936 #   ifndef __cpp_lib_syncbuf
7937 #     error "__cpp_lib_syncbuf should be defined in c++26"
7938 #   endif
7939 #   if __cpp_lib_syncbuf != 201803L
7940 #     error "__cpp_lib_syncbuf should have the value 201803L in c++26"
7941 #   endif
7942 # else
7943 #   ifdef __cpp_lib_syncbuf
7944 #     error "__cpp_lib_syncbuf should not be defined when the requirement '!defined(_LIBCPP_HAS_NO_EXPERIMENTAL_SYNCSTREAM)' is not met!"
7945 #   endif
7946 # endif
7947 
7948 # if !defined(_LIBCPP_VERSION)
7949 #   ifndef __cpp_lib_text_encoding
7950 #     error "__cpp_lib_text_encoding should be defined in c++26"
7951 #   endif
7952 #   if __cpp_lib_text_encoding != 202306L
7953 #     error "__cpp_lib_text_encoding should have the value 202306L in c++26"
7954 #   endif
7955 # else // _LIBCPP_VERSION
7956 #   ifdef __cpp_lib_text_encoding
7957 #     error "__cpp_lib_text_encoding should not be defined because it is unimplemented in libc++!"
7958 #   endif
7959 # endif
7960 
7961 # ifndef __cpp_lib_three_way_comparison
7962 #   error "__cpp_lib_three_way_comparison should be defined in c++26"
7963 # endif
7964 # if __cpp_lib_three_way_comparison != 201907L
7965 #   error "__cpp_lib_three_way_comparison should have the value 201907L in c++26"
7966 # endif
7967 
7968 # ifndef __cpp_lib_to_address
7969 #   error "__cpp_lib_to_address should be defined in c++26"
7970 # endif
7971 # if __cpp_lib_to_address != 201711L
7972 #   error "__cpp_lib_to_address should have the value 201711L in c++26"
7973 # endif
7974 
7975 # ifndef __cpp_lib_to_array
7976 #   error "__cpp_lib_to_array should be defined in c++26"
7977 # endif
7978 # if __cpp_lib_to_array != 201907L
7979 #   error "__cpp_lib_to_array should have the value 201907L in c++26"
7980 # endif
7981 
7982 # if !defined(_LIBCPP_VERSION)
7983 #   ifndef __cpp_lib_to_chars
7984 #     error "__cpp_lib_to_chars should be defined in c++26"
7985 #   endif
7986 #   if __cpp_lib_to_chars != 202306L
7987 #     error "__cpp_lib_to_chars should have the value 202306L in c++26"
7988 #   endif
7989 # else // _LIBCPP_VERSION
7990 #   ifdef __cpp_lib_to_chars
7991 #     error "__cpp_lib_to_chars should not be defined because it is unimplemented in libc++!"
7992 #   endif
7993 # endif
7994 
7995 # if !defined(_LIBCPP_VERSION)
7996 #   ifndef __cpp_lib_to_string
7997 #     error "__cpp_lib_to_string should be defined in c++26"
7998 #   endif
7999 #   if __cpp_lib_to_string != 202306L
8000 #     error "__cpp_lib_to_string should have the value 202306L in c++26"
8001 #   endif
8002 # else // _LIBCPP_VERSION
8003 #   ifdef __cpp_lib_to_string
8004 #     error "__cpp_lib_to_string should not be defined because it is unimplemented in libc++!"
8005 #   endif
8006 # endif
8007 
8008 # ifndef __cpp_lib_to_underlying
8009 #   error "__cpp_lib_to_underlying should be defined in c++26"
8010 # endif
8011 # if __cpp_lib_to_underlying != 202102L
8012 #   error "__cpp_lib_to_underlying should have the value 202102L in c++26"
8013 # endif
8014 
8015 # ifndef __cpp_lib_transformation_trait_aliases
8016 #   error "__cpp_lib_transformation_trait_aliases should be defined in c++26"
8017 # endif
8018 # if __cpp_lib_transformation_trait_aliases != 201304L
8019 #   error "__cpp_lib_transformation_trait_aliases should have the value 201304L in c++26"
8020 # endif
8021 
8022 # ifndef __cpp_lib_transparent_operators
8023 #   error "__cpp_lib_transparent_operators should be defined in c++26"
8024 # endif
8025 # if __cpp_lib_transparent_operators != 201510L
8026 #   error "__cpp_lib_transparent_operators should have the value 201510L in c++26"
8027 # endif
8028 
8029 # ifndef __cpp_lib_tuple_element_t
8030 #   error "__cpp_lib_tuple_element_t should be defined in c++26"
8031 # endif
8032 # if __cpp_lib_tuple_element_t != 201402L
8033 #   error "__cpp_lib_tuple_element_t should have the value 201402L in c++26"
8034 # endif
8035 
8036 # if !defined(_LIBCPP_VERSION)
8037 #   ifndef __cpp_lib_tuple_like
8038 #     error "__cpp_lib_tuple_like should be defined in c++26"
8039 #   endif
8040 #   if __cpp_lib_tuple_like != 202311L
8041 #     error "__cpp_lib_tuple_like should have the value 202311L in c++26"
8042 #   endif
8043 # else // _LIBCPP_VERSION
8044 #   ifdef __cpp_lib_tuple_like
8045 #     error "__cpp_lib_tuple_like should not be defined because it is unimplemented in libc++!"
8046 #   endif
8047 # endif
8048 
8049 # ifndef __cpp_lib_tuples_by_type
8050 #   error "__cpp_lib_tuples_by_type should be defined in c++26"
8051 # endif
8052 # if __cpp_lib_tuples_by_type != 201304L
8053 #   error "__cpp_lib_tuples_by_type should have the value 201304L in c++26"
8054 # endif
8055 
8056 # ifndef __cpp_lib_type_identity
8057 #   error "__cpp_lib_type_identity should be defined in c++26"
8058 # endif
8059 # if __cpp_lib_type_identity != 201806L
8060 #   error "__cpp_lib_type_identity should have the value 201806L in c++26"
8061 # endif
8062 
8063 # ifndef __cpp_lib_type_trait_variable_templates
8064 #   error "__cpp_lib_type_trait_variable_templates should be defined in c++26"
8065 # endif
8066 # if __cpp_lib_type_trait_variable_templates != 201510L
8067 #   error "__cpp_lib_type_trait_variable_templates should have the value 201510L in c++26"
8068 # endif
8069 
8070 # ifndef __cpp_lib_uncaught_exceptions
8071 #   error "__cpp_lib_uncaught_exceptions should be defined in c++26"
8072 # endif
8073 # if __cpp_lib_uncaught_exceptions != 201411L
8074 #   error "__cpp_lib_uncaught_exceptions should have the value 201411L in c++26"
8075 # endif
8076 
8077 # ifndef __cpp_lib_unordered_map_try_emplace
8078 #   error "__cpp_lib_unordered_map_try_emplace should be defined in c++26"
8079 # endif
8080 # if __cpp_lib_unordered_map_try_emplace != 201411L
8081 #   error "__cpp_lib_unordered_map_try_emplace should have the value 201411L in c++26"
8082 # endif
8083 
8084 # ifndef __cpp_lib_unreachable
8085 #   error "__cpp_lib_unreachable should be defined in c++26"
8086 # endif
8087 # if __cpp_lib_unreachable != 202202L
8088 #   error "__cpp_lib_unreachable should have the value 202202L in c++26"
8089 # endif
8090 
8091 # ifndef __cpp_lib_unwrap_ref
8092 #   error "__cpp_lib_unwrap_ref should be defined in c++26"
8093 # endif
8094 # if __cpp_lib_unwrap_ref != 201811L
8095 #   error "__cpp_lib_unwrap_ref should have the value 201811L in c++26"
8096 # endif
8097 
8098 # ifndef __cpp_lib_variant
8099 #   error "__cpp_lib_variant should be defined in c++26"
8100 # endif
8101 # if __cpp_lib_variant != 202102L
8102 #   error "__cpp_lib_variant should have the value 202102L in c++26"
8103 # endif
8104 
8105 # ifndef __cpp_lib_void_t
8106 #   error "__cpp_lib_void_t should be defined in c++26"
8107 # endif
8108 # if __cpp_lib_void_t != 201411L
8109 #   error "__cpp_lib_void_t should have the value 201411L in c++26"
8110 # endif
8111 
8112 #endif // TEST_STD_VER > 23
8113 
8114