Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / libcxx / include / CMakeLists.txt
blobb7b14200498a298ac369987e60c85311c84679de
1 set(files
2   __algorithm/adjacent_find.h
3   __algorithm/all_of.h
4   __algorithm/any_of.h
5   __algorithm/binary_search.h
6   __algorithm/clamp.h
7   __algorithm/comp.h
8   __algorithm/comp_ref_type.h
9   __algorithm/copy.h
10   __algorithm/copy_backward.h
11   __algorithm/copy_if.h
12   __algorithm/copy_move_common.h
13   __algorithm/copy_n.h
14   __algorithm/count.h
15   __algorithm/count_if.h
16   __algorithm/equal.h
17   __algorithm/equal_range.h
18   __algorithm/fill.h
19   __algorithm/fill_n.h
20   __algorithm/find.h
21   __algorithm/find_end.h
22   __algorithm/find_first_of.h
23   __algorithm/find_if.h
24   __algorithm/find_if_not.h
25   __algorithm/for_each.h
26   __algorithm/for_each_n.h
27   __algorithm/for_each_segment.h
28   __algorithm/generate.h
29   __algorithm/generate_n.h
30   __algorithm/half_positive.h
31   __algorithm/in_found_result.h
32   __algorithm/in_fun_result.h
33   __algorithm/in_in_out_result.h
34   __algorithm/in_in_result.h
35   __algorithm/in_out_out_result.h
36   __algorithm/in_out_result.h
37   __algorithm/includes.h
38   __algorithm/inplace_merge.h
39   __algorithm/is_heap.h
40   __algorithm/is_heap_until.h
41   __algorithm/is_partitioned.h
42   __algorithm/is_permutation.h
43   __algorithm/is_sorted.h
44   __algorithm/is_sorted_until.h
45   __algorithm/iter_swap.h
46   __algorithm/iterator_operations.h
47   __algorithm/lexicographical_compare.h
48   __algorithm/lexicographical_compare_three_way.h
49   __algorithm/lower_bound.h
50   __algorithm/make_heap.h
51   __algorithm/make_projected.h
52   __algorithm/max.h
53   __algorithm/max_element.h
54   __algorithm/merge.h
55   __algorithm/min.h
56   __algorithm/min_element.h
57   __algorithm/min_max_result.h
58   __algorithm/minmax.h
59   __algorithm/minmax_element.h
60   __algorithm/mismatch.h
61   __algorithm/move.h
62   __algorithm/move_backward.h
63   __algorithm/next_permutation.h
64   __algorithm/none_of.h
65   __algorithm/nth_element.h
66   __algorithm/partial_sort.h
67   __algorithm/partial_sort_copy.h
68   __algorithm/partition.h
69   __algorithm/partition_copy.h
70   __algorithm/partition_point.h
71   __algorithm/pop_heap.h
72   __algorithm/prev_permutation.h
73   __algorithm/pstl_any_all_none_of.h
74   __algorithm/pstl_backend.h
75   __algorithm/pstl_backends/cpu_backend.h
76   __algorithm/pstl_backends/cpu_backends/any_of.h
77   __algorithm/pstl_backends/cpu_backends/backend.h
78   __algorithm/pstl_backends/cpu_backends/fill.h
79   __algorithm/pstl_backends/cpu_backends/find_if.h
80   __algorithm/pstl_backends/cpu_backends/for_each.h
81   __algorithm/pstl_backends/cpu_backends/libdispatch.h
82   __algorithm/pstl_backends/cpu_backends/merge.h
83   __algorithm/pstl_backends/cpu_backends/serial.h
84   __algorithm/pstl_backends/cpu_backends/stable_sort.h
85   __algorithm/pstl_backends/cpu_backends/thread.h
86   __algorithm/pstl_backends/cpu_backends/transform.h
87   __algorithm/pstl_backends/cpu_backends/transform_reduce.h
88   __algorithm/pstl_copy.h
89   __algorithm/pstl_count.h
90   __algorithm/pstl_fill.h
91   __algorithm/pstl_find.h
92   __algorithm/pstl_for_each.h
93   __algorithm/pstl_frontend_dispatch.h
94   __algorithm/pstl_generate.h
95   __algorithm/pstl_is_partitioned.h
96   __algorithm/pstl_merge.h
97   __algorithm/pstl_move.h
98   __algorithm/pstl_replace.h
99   __algorithm/pstl_rotate_copy.h
100   __algorithm/pstl_sort.h
101   __algorithm/pstl_stable_sort.h
102   __algorithm/pstl_transform.h
103   __algorithm/push_heap.h
104   __algorithm/ranges_adjacent_find.h
105   __algorithm/ranges_all_of.h
106   __algorithm/ranges_any_of.h
107   __algorithm/ranges_binary_search.h
108   __algorithm/ranges_clamp.h
109   __algorithm/ranges_copy.h
110   __algorithm/ranges_copy_backward.h
111   __algorithm/ranges_copy_if.h
112   __algorithm/ranges_copy_n.h
113   __algorithm/ranges_count.h
114   __algorithm/ranges_count_if.h
115   __algorithm/ranges_ends_with.h
116   __algorithm/ranges_equal.h
117   __algorithm/ranges_equal_range.h
118   __algorithm/ranges_fill.h
119   __algorithm/ranges_fill_n.h
120   __algorithm/ranges_find.h
121   __algorithm/ranges_find_end.h
122   __algorithm/ranges_find_first_of.h
123   __algorithm/ranges_find_if.h
124   __algorithm/ranges_find_if_not.h
125   __algorithm/ranges_for_each.h
126   __algorithm/ranges_for_each_n.h
127   __algorithm/ranges_generate.h
128   __algorithm/ranges_generate_n.h
129   __algorithm/ranges_includes.h
130   __algorithm/ranges_inplace_merge.h
131   __algorithm/ranges_is_heap.h
132   __algorithm/ranges_is_heap_until.h
133   __algorithm/ranges_is_partitioned.h
134   __algorithm/ranges_is_permutation.h
135   __algorithm/ranges_is_sorted.h
136   __algorithm/ranges_is_sorted_until.h
137   __algorithm/ranges_iterator_concept.h
138   __algorithm/ranges_lexicographical_compare.h
139   __algorithm/ranges_lower_bound.h
140   __algorithm/ranges_make_heap.h
141   __algorithm/ranges_max.h
142   __algorithm/ranges_max_element.h
143   __algorithm/ranges_merge.h
144   __algorithm/ranges_min.h
145   __algorithm/ranges_min_element.h
146   __algorithm/ranges_minmax.h
147   __algorithm/ranges_minmax_element.h
148   __algorithm/ranges_mismatch.h
149   __algorithm/ranges_move.h
150   __algorithm/ranges_move_backward.h
151   __algorithm/ranges_next_permutation.h
152   __algorithm/ranges_none_of.h
153   __algorithm/ranges_nth_element.h
154   __algorithm/ranges_partial_sort.h
155   __algorithm/ranges_partial_sort_copy.h
156   __algorithm/ranges_partition.h
157   __algorithm/ranges_partition_copy.h
158   __algorithm/ranges_partition_point.h
159   __algorithm/ranges_pop_heap.h
160   __algorithm/ranges_prev_permutation.h
161   __algorithm/ranges_push_heap.h
162   __algorithm/ranges_remove.h
163   __algorithm/ranges_remove_copy.h
164   __algorithm/ranges_remove_copy_if.h
165   __algorithm/ranges_remove_if.h
166   __algorithm/ranges_replace.h
167   __algorithm/ranges_replace_copy.h
168   __algorithm/ranges_replace_copy_if.h
169   __algorithm/ranges_replace_if.h
170   __algorithm/ranges_reverse.h
171   __algorithm/ranges_reverse_copy.h
172   __algorithm/ranges_rotate.h
173   __algorithm/ranges_rotate_copy.h
174   __algorithm/ranges_sample.h
175   __algorithm/ranges_search.h
176   __algorithm/ranges_search_n.h
177   __algorithm/ranges_set_difference.h
178   __algorithm/ranges_set_intersection.h
179   __algorithm/ranges_set_symmetric_difference.h
180   __algorithm/ranges_set_union.h
181   __algorithm/ranges_shuffle.h
182   __algorithm/ranges_sort.h
183   __algorithm/ranges_sort_heap.h
184   __algorithm/ranges_stable_partition.h
185   __algorithm/ranges_stable_sort.h
186   __algorithm/ranges_starts_with.h
187   __algorithm/ranges_swap_ranges.h
188   __algorithm/ranges_transform.h
189   __algorithm/ranges_unique.h
190   __algorithm/ranges_unique_copy.h
191   __algorithm/ranges_upper_bound.h
192   __algorithm/remove.h
193   __algorithm/remove_copy.h
194   __algorithm/remove_copy_if.h
195   __algorithm/remove_if.h
196   __algorithm/replace.h
197   __algorithm/replace_copy.h
198   __algorithm/replace_copy_if.h
199   __algorithm/replace_if.h
200   __algorithm/reverse.h
201   __algorithm/reverse_copy.h
202   __algorithm/rotate.h
203   __algorithm/rotate_copy.h
204   __algorithm/sample.h
205   __algorithm/search.h
206   __algorithm/search_n.h
207   __algorithm/set_difference.h
208   __algorithm/set_intersection.h
209   __algorithm/set_symmetric_difference.h
210   __algorithm/set_union.h
211   __algorithm/shift_left.h
212   __algorithm/shift_right.h
213   __algorithm/shuffle.h
214   __algorithm/sift_down.h
215   __algorithm/sort.h
216   __algorithm/sort_heap.h
217   __algorithm/stable_partition.h
218   __algorithm/stable_sort.h
219   __algorithm/swap_ranges.h
220   __algorithm/three_way_comp_ref_type.h
221   __algorithm/transform.h
222   __algorithm/uniform_random_bit_generator_adaptor.h
223   __algorithm/unique.h
224   __algorithm/unique_copy.h
225   __algorithm/unwrap_iter.h
226   __algorithm/unwrap_range.h
227   __algorithm/upper_bound.h
228   __assert
229   __atomic/aliases.h
230   __atomic/atomic.h
231   __atomic/atomic_base.h
232   __atomic/atomic_flag.h
233   __atomic/atomic_init.h
234   __atomic/atomic_lock_free.h
235   __atomic/atomic_sync.h
236   __atomic/check_memory_order.h
237   __atomic/contention_t.h
238   __atomic/cxx_atomic_impl.h
239   __atomic/fence.h
240   __atomic/is_always_lock_free.h
241   __atomic/kill_dependency.h
242   __atomic/memory_order.h
243   __availability
244   __bit/bit_cast.h
245   __bit/bit_ceil.h
246   __bit/bit_floor.h
247   __bit/bit_log2.h
248   __bit/bit_width.h
249   __bit/blsr.h
250   __bit/byteswap.h
251   __bit/countl.h
252   __bit/countr.h
253   __bit/endian.h
254   __bit/has_single_bit.h
255   __bit/invert_if.h
256   __bit/popcount.h
257   __bit/rotate.h
258   __bit_reference
259   __charconv/chars_format.h
260   __charconv/from_chars_integral.h
261   __charconv/from_chars_result.h
262   __charconv/tables.h
263   __charconv/to_chars.h
264   __charconv/to_chars_base_10.h
265   __charconv/to_chars_floating_point.h
266   __charconv/to_chars_integral.h
267   __charconv/to_chars_result.h
268   __charconv/traits.h
269   __chrono/calendar.h
270   __chrono/concepts.h
271   __chrono/convert_to_timespec.h
272   __chrono/convert_to_tm.h
273   __chrono/day.h
274   __chrono/duration.h
275   __chrono/file_clock.h
276   __chrono/formatter.h
277   __chrono/hh_mm_ss.h
278   __chrono/high_resolution_clock.h
279   __chrono/literals.h
280   __chrono/month.h
281   __chrono/month_weekday.h
282   __chrono/monthday.h
283   __chrono/ostream.h
284   __chrono/parser_std_format_spec.h
285   __chrono/statically_widen.h
286   __chrono/steady_clock.h
287   __chrono/system_clock.h
288   __chrono/time_point.h
289   __chrono/tzdb.h
290   __chrono/tzdb_list.h
291   __chrono/weekday.h
292   __chrono/year.h
293   __chrono/year_month.h
294   __chrono/year_month_day.h
295   __chrono/year_month_weekday.h
296   __compare/common_comparison_category.h
297   __compare/compare_partial_order_fallback.h
298   __compare/compare_strong_order_fallback.h
299   __compare/compare_three_way.h
300   __compare/compare_three_way_result.h
301   __compare/compare_weak_order_fallback.h
302   __compare/is_eq.h
303   __compare/ordering.h
304   __compare/partial_order.h
305   __compare/strong_order.h
306   __compare/synth_three_way.h
307   __compare/three_way_comparable.h
308   __compare/weak_order.h
309   __concepts/arithmetic.h
310   __concepts/assignable.h
311   __concepts/boolean_testable.h
312   __concepts/class_or_enum.h
313   __concepts/common_reference_with.h
314   __concepts/common_with.h
315   __concepts/constructible.h
316   __concepts/convertible_to.h
317   __concepts/copyable.h
318   __concepts/derived_from.h
319   __concepts/destructible.h
320   __concepts/different_from.h
321   __concepts/equality_comparable.h
322   __concepts/invocable.h
323   __concepts/movable.h
324   __concepts/predicate.h
325   __concepts/regular.h
326   __concepts/relation.h
327   __concepts/same_as.h
328   __concepts/semiregular.h
329   __concepts/swappable.h
330   __concepts/totally_ordered.h
331   __condition_variable/condition_variable.h
332   __config
333   __coroutine/coroutine_handle.h
334   __coroutine/coroutine_traits.h
335   __coroutine/noop_coroutine_handle.h
336   __coroutine/trivial_awaitables.h
337   __debug_utils/randomize_range.h
338   __debug_utils/strict_weak_ordering_check.h
339   __exception/exception.h
340   __exception/exception_ptr.h
341   __exception/nested_exception.h
342   __exception/operations.h
343   __exception/terminate.h
344   __expected/bad_expected_access.h
345   __expected/expected.h
346   __expected/unexpect.h
347   __expected/unexpected.h
348   __filesystem/copy_options.h
349   __filesystem/directory_entry.h
350   __filesystem/directory_iterator.h
351   __filesystem/directory_options.h
352   __filesystem/file_status.h
353   __filesystem/file_time_type.h
354   __filesystem/file_type.h
355   __filesystem/filesystem_error.h
356   __filesystem/operations.h
357   __filesystem/path.h
358   __filesystem/path_iterator.h
359   __filesystem/perm_options.h
360   __filesystem/perms.h
361   __filesystem/recursive_directory_iterator.h
362   __filesystem/space_info.h
363   __filesystem/u8path.h
364   __format/buffer.h
365   __format/concepts.h
366   __format/container_adaptor.h
367   __format/enable_insertable.h
368   __format/escaped_output_table.h
369   __format/extended_grapheme_cluster_table.h
370   __format/format_arg.h
371   __format/format_arg_store.h
372   __format/format_args.h
373   __format/format_context.h
374   __format/format_error.h
375   __format/format_functions.h
376   __format/format_fwd.h
377   __format/format_parse_context.h
378   __format/format_string.h
379   __format/format_to_n_result.h
380   __format/formatter.h
381   __format/formatter_bool.h
382   __format/formatter_char.h
383   __format/formatter_floating_point.h
384   __format/formatter_integer.h
385   __format/formatter_integral.h
386   __format/formatter_output.h
387   __format/formatter_pointer.h
388   __format/formatter_string.h
389   __format/formatter_tuple.h
390   __format/parser_std_format_spec.h
391   __format/range_default_formatter.h
392   __format/range_formatter.h
393   __format/unicode.h
394   __format/width_estimation_table.h
395   __format/write_escaped.h
396   __functional/binary_function.h
397   __functional/binary_negate.h
398   __functional/bind.h
399   __functional/bind_back.h
400   __functional/bind_front.h
401   __functional/binder1st.h
402   __functional/binder2nd.h
403   __functional/boyer_moore_searcher.h
404   __functional/compose.h
405   __functional/default_searcher.h
406   __functional/function.h
407   __functional/hash.h
408   __functional/identity.h
409   __functional/invoke.h
410   __functional/is_transparent.h
411   __functional/mem_fn.h
412   __functional/mem_fun_ref.h
413   __functional/not_fn.h
414   __functional/operations.h
415   __functional/perfect_forward.h
416   __functional/pointer_to_binary_function.h
417   __functional/pointer_to_unary_function.h
418   __functional/ranges_operations.h
419   __functional/reference_wrapper.h
420   __functional/unary_function.h
421   __functional/unary_negate.h
422   __functional/weak_result_type.h
423   __fwd/array.h
424   __fwd/bit_reference.h
425   __fwd/fstream.h
426   __fwd/get.h
427   __fwd/hash.h
428   __fwd/ios.h
429   __fwd/istream.h
430   __fwd/mdspan.h
431   __fwd/memory_resource.h
432   __fwd/ostream.h
433   __fwd/pair.h
434   __fwd/span.h
435   __fwd/sstream.h
436   __fwd/streambuf.h
437   __fwd/string.h
438   __fwd/string_view.h
439   __fwd/subrange.h
440   __fwd/tuple.h
441   __hash_table
442   __ios/fpos.h
443   __iterator/access.h
444   __iterator/advance.h
445   __iterator/back_insert_iterator.h
446   __iterator/bounded_iter.h
447   __iterator/common_iterator.h
448   __iterator/concepts.h
449   __iterator/counted_iterator.h
450   __iterator/cpp17_iterator_concepts.h
451   __iterator/data.h
452   __iterator/default_sentinel.h
453   __iterator/distance.h
454   __iterator/empty.h
455   __iterator/erase_if_container.h
456   __iterator/front_insert_iterator.h
457   __iterator/incrementable_traits.h
458   __iterator/indirectly_comparable.h
459   __iterator/insert_iterator.h
460   __iterator/istream_iterator.h
461   __iterator/istreambuf_iterator.h
462   __iterator/iter_move.h
463   __iterator/iter_swap.h
464   __iterator/iterator.h
465   __iterator/iterator_traits.h
466   __iterator/iterator_with_data.h
467   __iterator/mergeable.h
468   __iterator/move_iterator.h
469   __iterator/move_sentinel.h
470   __iterator/next.h
471   __iterator/ostream_iterator.h
472   __iterator/ostreambuf_iterator.h
473   __iterator/permutable.h
474   __iterator/prev.h
475   __iterator/projected.h
476   __iterator/ranges_iterator_traits.h
477   __iterator/readable_traits.h
478   __iterator/reverse_access.h
479   __iterator/reverse_iterator.h
480   __iterator/segmented_iterator.h
481   __iterator/size.h
482   __iterator/sortable.h
483   __iterator/unreachable_sentinel.h
484   __iterator/wrap_iter.h
485   __locale
486   __locale_dir/locale_base_api/bsd_locale_defaults.h
487   __locale_dir/locale_base_api/bsd_locale_fallbacks.h
488   __locale_dir/locale_base_api/locale_guard.h
489   __math/abs.h
490   __math/copysign.h
491   __math/error_functions.h
492   __math/exponential_functions.h
493   __math/fdim.h
494   __math/fma.h
495   __math/gamma.h
496   __math/hyperbolic_functions.h
497   __math/hypot.h
498   __math/inverse_hyperbolic_functions.h
499   __math/inverse_trigonometric_functions.h
500   __math/logarithms.h
501   __math/min_max.h
502   __math/modulo.h
503   __math/remainder.h
504   __math/roots.h
505   __math/rounding_functions.h
506   __math/traits.h
507   __math/trigonometric_functions.h
508   __mbstate_t.h
509   __mdspan/default_accessor.h
510   __mdspan/extents.h
511   __mdspan/layout_left.h
512   __mdspan/layout_right.h
513   __mdspan/layout_stride.h
514   __mdspan/mdspan.h
515   __memory/addressof.h
516   __memory/align.h
517   __memory/aligned_alloc.h
518   __memory/allocate_at_least.h
519   __memory/allocation_guard.h
520   __memory/allocator.h
521   __memory/allocator_arg_t.h
522   __memory/allocator_destructor.h
523   __memory/allocator_traits.h
524   __memory/assume_aligned.h
525   __memory/auto_ptr.h
526   __memory/builtin_new_allocator.h
527   __memory/compressed_pair.h
528   __memory/concepts.h
529   __memory/construct_at.h
530   __memory/destruct_n.h
531   __memory/pointer_traits.h
532   __memory/ranges_construct_at.h
533   __memory/ranges_uninitialized_algorithms.h
534   __memory/raw_storage_iterator.h
535   __memory/shared_ptr.h
536   __memory/swap_allocator.h
537   __memory/temp_value.h
538   __memory/temporary_buffer.h
539   __memory/uninitialized_algorithms.h
540   __memory/unique_ptr.h
541   __memory/uses_allocator.h
542   __memory/uses_allocator_construction.h
543   __memory/voidify.h
544   __memory_resource/memory_resource.h
545   __memory_resource/monotonic_buffer_resource.h
546   __memory_resource/polymorphic_allocator.h
547   __memory_resource/pool_options.h
548   __memory_resource/synchronized_pool_resource.h
549   __memory_resource/unsynchronized_pool_resource.h
550   __mutex/lock_guard.h
551   __mutex/mutex.h
552   __mutex/once_flag.h
553   __mutex/tag_types.h
554   __mutex/unique_lock.h
555   __node_handle
556   __numeric/accumulate.h
557   __numeric/adjacent_difference.h
558   __numeric/exclusive_scan.h
559   __numeric/gcd_lcm.h
560   __numeric/inclusive_scan.h
561   __numeric/inner_product.h
562   __numeric/iota.h
563   __numeric/midpoint.h
564   __numeric/partial_sum.h
565   __numeric/pstl_reduce.h
566   __numeric/pstl_transform_reduce.h
567   __numeric/reduce.h
568   __numeric/transform_exclusive_scan.h
569   __numeric/transform_inclusive_scan.h
570   __numeric/transform_reduce.h
571   __random/bernoulli_distribution.h
572   __random/binomial_distribution.h
573   __random/cauchy_distribution.h
574   __random/chi_squared_distribution.h
575   __random/clamp_to_integral.h
576   __random/default_random_engine.h
577   __random/discard_block_engine.h
578   __random/discrete_distribution.h
579   __random/exponential_distribution.h
580   __random/extreme_value_distribution.h
581   __random/fisher_f_distribution.h
582   __random/gamma_distribution.h
583   __random/generate_canonical.h
584   __random/geometric_distribution.h
585   __random/independent_bits_engine.h
586   __random/is_seed_sequence.h
587   __random/is_valid.h
588   __random/knuth_b.h
589   __random/linear_congruential_engine.h
590   __random/log2.h
591   __random/lognormal_distribution.h
592   __random/mersenne_twister_engine.h
593   __random/negative_binomial_distribution.h
594   __random/normal_distribution.h
595   __random/piecewise_constant_distribution.h
596   __random/piecewise_linear_distribution.h
597   __random/poisson_distribution.h
598   __random/random_device.h
599   __random/ranlux.h
600   __random/seed_seq.h
601   __random/shuffle_order_engine.h
602   __random/student_t_distribution.h
603   __random/subtract_with_carry_engine.h
604   __random/uniform_int_distribution.h
605   __random/uniform_random_bit_generator.h
606   __random/uniform_real_distribution.h
607   __random/weibull_distribution.h
608   __ranges/access.h
609   __ranges/all.h
610   __ranges/as_rvalue_view.h
611   __ranges/chunk_by_view.h
612   __ranges/common_view.h
613   __ranges/concepts.h
614   __ranges/container_compatible_range.h
615   __ranges/counted.h
616   __ranges/dangling.h
617   __ranges/data.h
618   __ranges/drop_view.h
619   __ranges/drop_while_view.h
620   __ranges/elements_view.h
621   __ranges/empty.h
622   __ranges/empty_view.h
623   __ranges/enable_borrowed_range.h
624   __ranges/enable_view.h
625   __ranges/filter_view.h
626   __ranges/from_range.h
627   __ranges/iota_view.h
628   __ranges/istream_view.h
629   __ranges/join_view.h
630   __ranges/lazy_split_view.h
631   __ranges/movable_box.h
632   __ranges/non_propagating_cache.h
633   __ranges/owning_view.h
634   __ranges/range_adaptor.h
635   __ranges/rbegin.h
636   __ranges/ref_view.h
637   __ranges/rend.h
638   __ranges/repeat_view.h
639   __ranges/reverse_view.h
640   __ranges/single_view.h
641   __ranges/size.h
642   __ranges/split_view.h
643   __ranges/subrange.h
644   __ranges/take_view.h
645   __ranges/take_while_view.h
646   __ranges/to.h
647   __ranges/transform_view.h
648   __ranges/view_interface.h
649   __ranges/views.h
650   __ranges/zip_view.h
651   __split_buffer
652   __std_clang_module
653   __std_mbstate_t.h
654   __stop_token/atomic_unique_lock.h
655   __stop_token/intrusive_list_view.h
656   __stop_token/intrusive_shared_ptr.h
657   __stop_token/stop_callback.h
658   __stop_token/stop_source.h
659   __stop_token/stop_state.h
660   __stop_token/stop_token.h
661   __string/char_traits.h
662   __string/constexpr_c_functions.h
663   __string/extern_template_lists.h
664   __support/android/locale_bionic.h
665   __support/fuchsia/xlocale.h
666   __support/ibm/gettod_zos.h
667   __support/ibm/locale_mgmt_zos.h
668   __support/ibm/nanosleep.h
669   __support/ibm/xlocale.h
670   __support/musl/xlocale.h
671   __support/newlib/xlocale.h
672   __support/openbsd/xlocale.h
673   __support/win32/locale_win32.h
674   __support/xlocale/__nop_locale_mgmt.h
675   __support/xlocale/__posix_l_fallback.h
676   __support/xlocale/__strtonum_fallback.h
677   __system_error/errc.h
678   __system_error/error_category.h
679   __system_error/error_code.h
680   __system_error/error_condition.h
681   __system_error/system_error.h
682   __thread/formatter.h
683   __thread/id.h
684   __thread/jthread.h
685   __thread/poll_with_backoff.h
686   __thread/this_thread.h
687   __thread/thread.h
688   __thread/timed_backoff_policy.h
689   __threading_support
690   __tree
691   __tuple/make_tuple_types.h
692   __tuple/pair_like.h
693   __tuple/sfinae_helpers.h
694   __tuple/tuple_element.h
695   __tuple/tuple_indices.h
696   __tuple/tuple_like.h
697   __tuple/tuple_like_ext.h
698   __tuple/tuple_size.h
699   __tuple/tuple_types.h
700   __type_traits/add_const.h
701   __type_traits/add_cv.h
702   __type_traits/add_lvalue_reference.h
703   __type_traits/add_pointer.h
704   __type_traits/add_rvalue_reference.h
705   __type_traits/add_volatile.h
706   __type_traits/aligned_storage.h
707   __type_traits/aligned_union.h
708   __type_traits/alignment_of.h
709   __type_traits/apply_cv.h
710   __type_traits/can_extract_key.h
711   __type_traits/common_reference.h
712   __type_traits/common_type.h
713   __type_traits/conditional.h
714   __type_traits/conjunction.h
715   __type_traits/copy_cv.h
716   __type_traits/copy_cvref.h
717   __type_traits/datasizeof.h
718   __type_traits/decay.h
719   __type_traits/dependent_type.h
720   __type_traits/disjunction.h
721   __type_traits/enable_if.h
722   __type_traits/extent.h
723   __type_traits/has_unique_object_representation.h
724   __type_traits/has_virtual_destructor.h
725   __type_traits/integral_constant.h
726   __type_traits/invoke.h
727   __type_traits/is_abstract.h
728   __type_traits/is_aggregate.h
729   __type_traits/is_allocator.h
730   __type_traits/is_always_bitcastable.h
731   __type_traits/is_arithmetic.h
732   __type_traits/is_array.h
733   __type_traits/is_assignable.h
734   __type_traits/is_base_of.h
735   __type_traits/is_bounded_array.h
736   __type_traits/is_callable.h
737   __type_traits/is_char_like_type.h
738   __type_traits/is_class.h
739   __type_traits/is_compound.h
740   __type_traits/is_const.h
741   __type_traits/is_constant_evaluated.h
742   __type_traits/is_constructible.h
743   __type_traits/is_convertible.h
744   __type_traits/is_copy_assignable.h
745   __type_traits/is_copy_constructible.h
746   __type_traits/is_core_convertible.h
747   __type_traits/is_default_constructible.h
748   __type_traits/is_destructible.h
749   __type_traits/is_empty.h
750   __type_traits/is_enum.h
751   __type_traits/is_equality_comparable.h
752   __type_traits/is_execution_policy.h
753   __type_traits/is_final.h
754   __type_traits/is_floating_point.h
755   __type_traits/is_function.h
756   __type_traits/is_fundamental.h
757   __type_traits/is_implicitly_default_constructible.h
758   __type_traits/is_integral.h
759   __type_traits/is_literal_type.h
760   __type_traits/is_member_function_pointer.h
761   __type_traits/is_member_object_pointer.h
762   __type_traits/is_member_pointer.h
763   __type_traits/is_move_assignable.h
764   __type_traits/is_move_constructible.h
765   __type_traits/is_nothrow_assignable.h
766   __type_traits/is_nothrow_constructible.h
767   __type_traits/is_nothrow_convertible.h
768   __type_traits/is_nothrow_copy_assignable.h
769   __type_traits/is_nothrow_copy_constructible.h
770   __type_traits/is_nothrow_default_constructible.h
771   __type_traits/is_nothrow_destructible.h
772   __type_traits/is_nothrow_move_assignable.h
773   __type_traits/is_nothrow_move_constructible.h
774   __type_traits/is_null_pointer.h
775   __type_traits/is_object.h
776   __type_traits/is_pod.h
777   __type_traits/is_pointer.h
778   __type_traits/is_polymorphic.h
779   __type_traits/is_primary_template.h
780   __type_traits/is_reference.h
781   __type_traits/is_reference_wrapper.h
782   __type_traits/is_referenceable.h
783   __type_traits/is_same.h
784   __type_traits/is_scalar.h
785   __type_traits/is_scoped_enum.h
786   __type_traits/is_signed.h
787   __type_traits/is_signed_integer.h
788   __type_traits/is_specialization.h
789   __type_traits/is_standard_layout.h
790   __type_traits/is_swappable.h
791   __type_traits/is_trivial.h
792   __type_traits/is_trivially_assignable.h
793   __type_traits/is_trivially_constructible.h
794   __type_traits/is_trivially_copy_assignable.h
795   __type_traits/is_trivially_copy_constructible.h
796   __type_traits/is_trivially_copyable.h
797   __type_traits/is_trivially_default_constructible.h
798   __type_traits/is_trivially_destructible.h
799   __type_traits/is_trivially_lexicographically_comparable.h
800   __type_traits/is_trivially_move_assignable.h
801   __type_traits/is_trivially_move_constructible.h
802   __type_traits/is_unbounded_array.h
803   __type_traits/is_union.h
804   __type_traits/is_unsigned.h
805   __type_traits/is_unsigned_integer.h
806   __type_traits/is_valid_expansion.h
807   __type_traits/is_void.h
808   __type_traits/is_volatile.h
809   __type_traits/lazy.h
810   __type_traits/make_32_64_or_128_bit.h
811   __type_traits/make_const_lvalue_ref.h
812   __type_traits/make_signed.h
813   __type_traits/make_unsigned.h
814   __type_traits/maybe_const.h
815   __type_traits/nat.h
816   __type_traits/negation.h
817   __type_traits/noexcept_move_assign_container.h
818   __type_traits/operation_traits.h
819   __type_traits/predicate_traits.h
820   __type_traits/promote.h
821   __type_traits/rank.h
822   __type_traits/remove_all_extents.h
823   __type_traits/remove_const.h
824   __type_traits/remove_const_ref.h
825   __type_traits/remove_cv.h
826   __type_traits/remove_cvref.h
827   __type_traits/remove_extent.h
828   __type_traits/remove_pointer.h
829   __type_traits/remove_reference.h
830   __type_traits/remove_volatile.h
831   __type_traits/result_of.h
832   __type_traits/strip_signature.h
833   __type_traits/type_identity.h
834   __type_traits/type_list.h
835   __type_traits/underlying_type.h
836   __type_traits/unwrap_ref.h
837   __type_traits/void_t.h
838   __undef_macros
839   __utility/as_const.h
840   __utility/auto_cast.h
841   __utility/cmp.h
842   __utility/convert_to_integral.h
843   __utility/declval.h
844   __utility/empty.h
845   __utility/exception_guard.h
846   __utility/exchange.h
847   __utility/forward.h
848   __utility/forward_like.h
849   __utility/in_place.h
850   __utility/integer_sequence.h
851   __utility/is_pointer_in_range.h
852   __utility/move.h
853   __utility/pair.h
854   __utility/piecewise_construct.h
855   __utility/priority_tag.h
856   __utility/rel_ops.h
857   __utility/small_buffer.h
858   __utility/swap.h
859   __utility/to_underlying.h
860   __utility/unreachable.h
861   __variant/monostate.h
862   __verbose_abort
863   algorithm
864   any
865   array
866   atomic
867   barrier
868   bit
869   bitset
870   cassert
871   ccomplex
872   cctype
873   cerrno
874   cfenv
875   cfloat
876   charconv
877   chrono
878   cinttypes
879   ciso646
880   climits
881   clocale
882   cmath
883   codecvt
884   compare
885   complex
886   complex.h
887   concepts
888   condition_variable
889   coroutine
890   csetjmp
891   csignal
892   cstdarg
893   cstdbool
894   cstddef
895   cstdint
896   cstdio
897   cstdlib
898   cstring
899   ctgmath
900   ctime
901   ctype.h
902   cuchar
903   cwchar
904   cwctype
905   deque
906   errno.h
907   exception
908   execution
909   expected
910   experimental/__config
911   experimental/__memory
912   experimental/__simd/abi_tag.h
913   experimental/__simd/aligned_tag.h
914   experimental/__simd/declaration.h
915   experimental/__simd/internal_declaration.h
916   experimental/__simd/reference.h
917   experimental/__simd/scalar.h
918   experimental/__simd/simd.h
919   experimental/__simd/simd_mask.h
920   experimental/__simd/traits.h
921   experimental/__simd/utility.h
922   experimental/__simd/vec_ext.h
923   experimental/deque
924   experimental/forward_list
925   experimental/iterator
926   experimental/list
927   experimental/map
928   experimental/memory_resource
929   experimental/propagate_const
930   experimental/regex
931   experimental/set
932   experimental/simd
933   experimental/string
934   experimental/type_traits
935   experimental/unordered_map
936   experimental/unordered_set
937   experimental/utility
938   experimental/vector
939   ext/__hash
940   ext/hash_map
941   ext/hash_set
942   fenv.h
943   filesystem
944   float.h
945   format
946   forward_list
947   fstream
948   functional
949   future
950   initializer_list
951   inttypes.h
952   iomanip
953   ios
954   iosfwd
955   iostream
956   istream
957   iterator
958   latch
959   libcxx.imp
960   limits
961   list
962   locale
963   locale.h
964   map
965   math.h
966   mdspan
967   memory
968   memory_resource
969   mutex
970   new
971   numbers
972   numeric
973   optional
974   ostream
975   print
976   queue
977   random
978   ranges
979   ratio
980   regex
981   scoped_allocator
982   semaphore
983   set
984   shared_mutex
985   source_location
986   span
987   sstream
988   stack
989   stdatomic.h
990   stdbool.h
991   stddef.h
992   stdexcept
993   stdint.h
994   stdio.h
995   stdlib.h
996   stop_token
997   streambuf
998   string
999   string.h
1000   string_view
1001   strstream
1002   system_error
1003   tgmath.h
1004   thread
1005   tuple
1006   type_traits
1007   typeindex
1008   typeinfo
1009   uchar.h
1010   unordered_map
1011   unordered_set
1012   utility
1013   valarray
1014   variant
1015   vector
1016   version
1017   wchar.h
1018   wctype.h
1019   )
1021 foreach(feature LIBCXX_ENABLE_FILESYSTEM LIBCXX_ENABLE_LOCALIZATION LIBCXX_ENABLE_THREADS LIBCXX_ENABLE_WIDE_CHARACTERS)
1022   if (NOT ${${feature}})
1023     set(requires_${feature} "requires LIBCXX_CONFIGURED_WITHOUT_SUPPORT_FOR_THIS_HEADER")
1024   endif()
1025 endforeach()
1027 configure_file("__config_site.in" "${LIBCXX_GENERATED_INCLUDE_TARGET_DIR}/__config_site" @ONLY)
1028 configure_file("module.modulemap.in" "${LIBCXX_GENERATED_INCLUDE_DIR}/module.modulemap" @ONLY)
1030 set(_all_includes "${LIBCXX_GENERATED_INCLUDE_TARGET_DIR}/__config_site"
1031                   "${LIBCXX_GENERATED_INCLUDE_DIR}/module.modulemap")
1032 foreach(f ${files})
1033   set(src "${CMAKE_CURRENT_SOURCE_DIR}/${f}")
1034   set(dst "${LIBCXX_GENERATED_INCLUDE_DIR}/${f}")
1035   add_custom_command(OUTPUT ${dst}
1036     DEPENDS ${src}
1037     COMMAND ${CMAKE_COMMAND} -E copy_if_different ${src} ${dst}
1038     COMMENT "Copying CXX header ${f}")
1039   list(APPEND _all_includes "${dst}")
1040 endforeach()
1042 add_custom_target(generate-cxx-headers ALL DEPENDS ${_all_includes})
1044 add_library(cxx-headers INTERFACE)
1045 target_link_libraries(cxx-headers INTERFACE libcxx-abi-headers)
1046 add_dependencies(cxx-headers generate-cxx-headers)
1047 # It's important that the arch directory be included first so that its header files
1048 # which interpose on the default include dir be included instead of the default ones.
1049 target_include_directories(cxx-headers INTERFACE ${LIBCXX_GENERATED_INCLUDE_TARGET_DIR}
1050                                                  ${LIBCXX_GENERATED_INCLUDE_DIR})
1052 if (LIBCXX_INSTALL_HEADERS)
1053   foreach(file ${files})
1054     get_filename_component(dir ${file} DIRECTORY)
1055     install(FILES ${file}
1056       DESTINATION "${LIBCXX_INSTALL_INCLUDE_DIR}/${dir}"
1057       COMPONENT cxx-headers
1058       PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
1059     )
1060   endforeach()
1062   # Install the generated __config_site file to the per-target include dir.
1063   install(FILES "${LIBCXX_GENERATED_INCLUDE_TARGET_DIR}/__config_site"
1064     DESTINATION "${LIBCXX_INSTALL_INCLUDE_TARGET_DIR}"
1065     PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
1066     COMPONENT cxx-headers)
1068   # Install the generated modulemap file to the generic include dir.
1069   install(FILES "${LIBCXX_GENERATED_INCLUDE_DIR}/module.modulemap"
1070     DESTINATION "${LIBCXX_INSTALL_INCLUDE_DIR}"
1071     PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
1072     COMPONENT cxx-headers)
1074   if (NOT CMAKE_CONFIGURATION_TYPES)
1075     add_custom_target(install-cxx-headers
1076                       DEPENDS cxx-headers
1077                       COMMAND "${CMAKE_COMMAND}"
1078                               -DCMAKE_INSTALL_COMPONENT=cxx-headers
1079                               -P "${CMAKE_BINARY_DIR}/cmake_install.cmake")
1080     # Stripping is a no-op for headers
1081     add_custom_target(install-cxx-headers-stripped DEPENDS install-cxx-headers)
1082   endif()
1083 endif()