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