// define the module for __config outside of the top level 'std' module
// since __config may be included from C headers which may create an
// include cycle.
module std_config [system] [extern_c] {
  header "__config"
  export *
}

module std [system] {
  export std_config
  // FIXME: The standard does not require that each of these submodules
  // re-exports its imported modules. We should provide an alternative form of
  // export that issues a warning if a name from the submodule is used, and
  // use that to provide a 'strict mode' for libc++.

  // Deprecated C-compatibility headers. These can all be included from within
  // an 'extern "C"' context.
  module depr [extern_c] {
    // <assert.h> provided by C library.
    module ctype_h {
      header "ctype.h"
      export *
    }
    module errno_h {
      header "errno.h"
      export *
    }
    module fenv_h {
      header "fenv.h"
      export *
    }
    // <float.h> provided by compiler or C library.
    module inttypes_h {
      header "inttypes.h"
      export stdint_h
      export *
    }
    // <iso646.h> provided by compiler.
    // <limits.h> provided by compiler or C library.
    module locale_h {
      @requires_LIBCXX_ENABLE_LOCALIZATION@
      header "locale.h"
      export *
    }
    module math_h {
      header "math.h"
      export *
    }
    module setjmp_h {
      header "setjmp.h"
      export *
    }
    module stdatomic_h {
      @requires_LIBCXX_ENABLE_THREADS@
      requires cplusplus23
      header "stdatomic.h"
      export *
    }
    // FIXME: <stdalign.h> is missing.
    // <signal.h> provided by C library.
    // <stdarg.h> provided by compiler.
    // <stdbool.h> provided by compiler.
    module stddef_h {
      // <stddef.h>'s __need_* macros require textual inclusion.
      textual header "stddef.h"
    }
    module stdint_h {
      header "stdint.h"
      export *
      // FIXME: This module only exists on OS X and for some reason the
      // wildcard above doesn't export it.
      export Darwin.C.stdint
    }
    module stdio_h {
      // <stdio.h>'s __need_* macros require textual inclusion.
      textual header "stdio.h"
      export *
      export Darwin.C.stdio
    }
    module stdlib_h {
      // <stdlib.h>'s __need_* macros require textual inclusion.
      textual header "stdlib.h"
      export *
    }
    module string_h {
      header "string.h"
      export *
    }
    module uchar_h {
      header "uchar.h"
      export *
    }
    // <time.h> provided by C library.
    module wchar_h {
      @requires_LIBCXX_ENABLE_WIDE_CHARACTERS@
      // <wchar.h>'s __need_* macros require textual inclusion.
      textual header "wchar.h"
      export *
    }
    module wctype_h {
      @requires_LIBCXX_ENABLE_WIDE_CHARACTERS@
      header "wctype.h"
      export *
    }
  }

  // <complex.h> and <tgmath.h> are not C headers in any real sense, do not
  // allow their use in extern "C" contexts.
  module complex_h {
    header "complex.h"
    export ccomplex
    export *
  }
  module tgmath_h {
    header "tgmath.h"
    export ccomplex
    export cmath
    export *
  }

  // C compatibility headers.
  module compat {
    module cassert {
      // <cassert>'s use of NDEBUG requires textual inclusion.
      textual header "cassert"
    }
    module ccomplex {
      header "ccomplex"
      export complex
      export *
    }
    module cctype {
      header "cctype"
      export *
    }
    module cerrno {
      header "cerrno"
      export *
    }
    module cfenv {
      header "cfenv"
      export *
    }
    module cfloat {
      header "cfloat"
      export *
    }
    module cinttypes {
      header "cinttypes"
      export cstdint
      export *
    }
    module ciso646 {
      header "ciso646"
      export *
    }
    module climits {
      header "climits"
      export *
    }
    module clocale {
      @requires_LIBCXX_ENABLE_LOCALIZATION@
      header "clocale"
      export *
    }
    module cmath {
      header "cmath"
      export *
    }
    module csetjmp {
      header "csetjmp"
      export *
    }
    module csignal {
      header "csignal"
      export *
    }
    // FIXME: <cstdalign> is missing.
    module cstdarg {
      header "cstdarg"
      export *
    }
    module cstdbool {
      header "cstdbool"
      export *
    }
    module cstddef {
      header "cstddef"
      export *
    }
    module cstdint {
      header "cstdint"
      export depr.stdint_h
      export *
    }
    module cstdio {
      header "cstdio"
      export *
    }
    module cstdlib {
      header "cstdlib"
      export *
    }
    module cstring {
      header "cstring"
      export *
    }
    module ctgmath {
      header "ctgmath"
      export ccomplex
      export cmath
      export *
    }
    module ctime {
      header "ctime"
      export *
    }
    module cuchar {
      header "cuchar"
      export *
    }
    module cwchar {
      @requires_LIBCXX_ENABLE_WIDE_CHARACTERS@
      header "cwchar"
      export depr.stdio_h
      export *
    }
    module cwctype {
      @requires_LIBCXX_ENABLE_WIDE_CHARACTERS@
      header "cwctype"
      export *
    }
  }

  module algorithm {
    header "algorithm"
    export initializer_list
    export *

    module __algorithm {
      module adjacent_find                   { private header "__algorithm/adjacent_find.h" }
      module algorithm_family                { private header "__algorithm/algorithm_family.h" }
      module all_of                          { private header "__algorithm/all_of.h" }
      module any_of                          { private header "__algorithm/any_of.h" }
      module binary_search                   { private header "__algorithm/binary_search.h" }
      module clamp                           { private header "__algorithm/clamp.h" }
      module comp                            { private header "__algorithm/comp.h" }
      module comp_ref_type                   { private header "__algorithm/comp_ref_type.h" }
      module copy                            { private header "__algorithm/copy.h" }
      module copy_backward                   { private header "__algorithm/copy_backward.h" }
      module copy_if                         { private header "__algorithm/copy_if.h" }
      module copy_n                          { private header "__algorithm/copy_n.h" }
      module count                           { private header "__algorithm/count.h" }
      module count_if                        { private header "__algorithm/count_if.h" }
      module equal                           { private header "__algorithm/equal.h" }
      module equal_range                     { private header "__algorithm/equal_range.h" }
      module fill                            { private header "__algorithm/fill.h" }
      module fill_n                          { private header "__algorithm/fill_n.h" }
      module find                            { private header "__algorithm/find.h" }
      module find_end                        { private header "__algorithm/find_end.h" }
      module find_first_of                   { private header "__algorithm/find_first_of.h" }
      module find_if                         { private header "__algorithm/find_if.h" }
      module find_if_not                     { private header "__algorithm/find_if_not.h" }
      module for_each                        { private header "__algorithm/for_each.h" }
      module for_each_n                      { private header "__algorithm/for_each_n.h" }
      module generate                        { private header "__algorithm/generate.h" }
      module generate_n                      { private header "__algorithm/generate_n.h" }
      module half_positive                   { private header "__algorithm/half_positive.h" }
      module in_found_result                 { private header "__algorithm/in_found_result.h" }
      module in_fun_result                   { private header "__algorithm/in_fun_result.h" }
      module in_in_out_result                { private header "__algorithm/in_in_out_result.h" }
      module in_in_result                    { private header "__algorithm/in_in_result.h" }
      module in_out_out_result               { private header "__algorithm/in_out_out_result.h" }
      module in_out_result                   { private header "__algorithm/in_out_result.h" }
      module includes                        { private header "__algorithm/includes.h" }
      module inplace_merge                   { private header "__algorithm/inplace_merge.h" }
      module is_heap                         { private header "__algorithm/is_heap.h" }
      module is_heap_until                   { private header "__algorithm/is_heap_until.h" }
      module is_partitioned                  { private header "__algorithm/is_partitioned.h" }
      module is_permutation                  { private header "__algorithm/is_permutation.h" }
      module is_sorted                       { private header "__algorithm/is_sorted.h" }
      module is_sorted_until                 { private header "__algorithm/is_sorted_until.h" }
      module iter_swap                       { private header "__algorithm/iter_swap.h" }
      module iterator_operations             { private header "__algorithm/iterator_operations.h" }
      module lexicographical_compare         { private header "__algorithm/lexicographical_compare.h" }
      module lower_bound                     { private header "__algorithm/lower_bound.h" }
      module make_heap                       { private header "__algorithm/make_heap.h" }
      module make_projected                  { private header "__algorithm/make_projected.h" }
      module max                             { private header "__algorithm/max.h" }
      module max_element                     { private header "__algorithm/max_element.h" }
      module merge                           { private header "__algorithm/merge.h" }
      module min                             { private header "__algorithm/min.h" }
      module min_element                     { private header "__algorithm/min_element.h" }
      module min_max_result                  { private header "__algorithm/min_max_result.h" }
      module minmax                          { private header "__algorithm/minmax.h" }
      module minmax_element                  { private header "__algorithm/minmax_element.h" }
      module mismatch                        { private header "__algorithm/mismatch.h" }
      module move                            { private header "__algorithm/move.h" }
      module move_backward                   { private header "__algorithm/move_backward.h" }
      module next_permutation                { private header "__algorithm/next_permutation.h" }
      module none_of                         { private header "__algorithm/none_of.h" }
      module nth_element                     { private header "__algorithm/nth_element.h" }
      module partial_sort                    { private header "__algorithm/partial_sort.h" }
      module partial_sort_copy               { private header "__algorithm/partial_sort_copy.h" }
      module partition                       { private header "__algorithm/partition.h" }
      module partition_copy                  { private header "__algorithm/partition_copy.h" }
      module partition_point                 { private header "__algorithm/partition_point.h" }
      module pop_heap                        { private header "__algorithm/pop_heap.h" }
      module prev_permutation                { private header "__algorithm/prev_permutation.h" }
      module push_heap                       { private header "__algorithm/push_heap.h" }
      module ranges_adjacent_find            { private header "__algorithm/ranges_adjacent_find.h" }
      module ranges_all_of                   { private header "__algorithm/ranges_all_of.h" }
      module ranges_any_of                   { private header "__algorithm/ranges_any_of.h" }
      module ranges_binary_search            { private header "__algorithm/ranges_binary_search.h" }
      module ranges_copy                     { private header "__algorithm/ranges_copy.h" }
      module ranges_copy_backward            { private header "__algorithm/ranges_copy_backward.h" }
      module ranges_copy_if                  { private header "__algorithm/ranges_copy_if.h" }
      module ranges_copy_n                   { private header "__algorithm/ranges_copy_n.h" }
      module ranges_count                    { private header "__algorithm/ranges_count.h" }
      module ranges_count_if                 { private header "__algorithm/ranges_count_if.h" }
      module ranges_equal                    { private header "__algorithm/ranges_equal.h" }
      module ranges_equal_range              { private header "__algorithm/ranges_equal_range.h" }
      module ranges_fill                     { private header "__algorithm/ranges_fill.h" }
      module ranges_fill_n                   { private header "__algorithm/ranges_fill_n.h" }
      module ranges_find                     { private header "__algorithm/ranges_find.h" }
      module ranges_find_end                 { private header "__algorithm/ranges_find_end.h" }
      module ranges_find_first_of            { private header "__algorithm/ranges_find_first_of.h" }
      module ranges_find_if                  { private header "__algorithm/ranges_find_if.h" }
      module ranges_find_if_not              { private header "__algorithm/ranges_find_if_not.h" }
      module ranges_for_each                 { private header "__algorithm/ranges_for_each.h" }
      module ranges_for_each_n               { private header "__algorithm/ranges_for_each_n.h" }
      module ranges_generate                 { private header "__algorithm/ranges_generate.h" }
      module ranges_generate_n               { private header "__algorithm/ranges_generate_n.h" }
      module ranges_includes                 { private header "__algorithm/ranges_includes.h" }
      module ranges_inplace_merge            { private header "__algorithm/ranges_inplace_merge.h" }
      module ranges_is_heap                  { private header "__algorithm/ranges_is_heap.h" }
      module ranges_is_heap_until            { private header "__algorithm/ranges_is_heap_until.h" }
      module ranges_is_partitioned           { private header "__algorithm/ranges_is_partitioned.h" }
      module ranges_is_sorted                { private header "__algorithm/ranges_is_sorted.h" }
      module ranges_is_sorted_until          { private header "__algorithm/ranges_is_sorted_until.h" }
      module ranges_iterator_concept         { private header "__algorithm/ranges_iterator_concept.h" }
      module ranges_lexicographical_compare  { private header "__algorithm/ranges_lexicographical_compare.h" }
      module ranges_lower_bound              { private header "__algorithm/ranges_lower_bound.h" }
      module ranges_make_heap                { private header "__algorithm/ranges_make_heap.h" }
      module ranges_max                      { private header "__algorithm/ranges_max.h" }
      module ranges_max_element              { private header "__algorithm/ranges_max_element.h" }
      module ranges_merge                    { private header "__algorithm/ranges_merge.h" }
      module ranges_min                      { private header "__algorithm/ranges_min.h" }
      module ranges_min_element              { private header "__algorithm/ranges_min_element.h" }
      module ranges_minmax                   { private header "__algorithm/ranges_minmax.h" }
      module ranges_minmax_element           { private header "__algorithm/ranges_minmax_element.h" }
      module ranges_mismatch                 { private header "__algorithm/ranges_mismatch.h" }
      module ranges_move                     { private header "__algorithm/ranges_move.h" }
      module ranges_move_backward            { private header "__algorithm/ranges_move_backward.h" }
      module ranges_next_permutation         { private header "__algorithm/ranges_next_permutation.h" }
      module ranges_none_of                  { private header "__algorithm/ranges_none_of.h" }
      module ranges_nth_element              { private header "__algorithm/ranges_nth_element.h" }
      module ranges_partial_sort             { private header "__algorithm/ranges_partial_sort.h" }
      module ranges_partial_sort_copy        { private header "__algorithm/ranges_partial_sort_copy.h" }
      module ranges_partition                { private header "__algorithm/ranges_partition.h" }
      module ranges_partition_copy           { private header "__algorithm/ranges_partition_copy.h" }
      module ranges_partition_point          { private header "__algorithm/ranges_partition_point.h" }
      module ranges_pop_heap                 { private header "__algorithm/ranges_pop_heap.h" }
      module ranges_prev_permutation         { private header "__algorithm/ranges_prev_permutation.h" }
      module ranges_push_heap                { private header "__algorithm/ranges_push_heap.h" }
      module ranges_remove                   { private header "__algorithm/ranges_remove.h" }
      module ranges_remove_copy              { private header "__algorithm/ranges_remove_copy.h" }
      module ranges_remove_copy_if           { private header "__algorithm/ranges_remove_copy_if.h" }
      module ranges_remove_if                { private header "__algorithm/ranges_remove_if.h" }
      module ranges_replace                  { private header "__algorithm/ranges_replace.h" }
      module ranges_replace_copy             { private header "__algorithm/ranges_replace_copy.h" }
      module ranges_replace_copy_if          { private header "__algorithm/ranges_replace_copy_if.h" }
      module ranges_replace_if               { private header "__algorithm/ranges_replace_if.h" }
      module ranges_reverse                  { private header "__algorithm/ranges_reverse.h" }
      module ranges_reverse_copy             { private header "__algorithm/ranges_reverse_copy.h" }
      module ranges_rotate_copy              { private header "__algorithm/ranges_rotate_copy.h" }
      module ranges_sample                   { private header "__algorithm/ranges_sample.h" }
      module ranges_search                   { private header "__algorithm/ranges_search.h" }
      module ranges_search_n                 { private header "__algorithm/ranges_search_n.h" }
      module ranges_set_difference           { private header "__algorithm/ranges_set_difference.h" }
      module ranges_set_intersection         { private header "__algorithm/ranges_set_intersection.h" }
      module ranges_set_symmetric_difference { private header "__algorithm/ranges_set_symmetric_difference.h" }
      module ranges_set_union                { private header "__algorithm/ranges_set_union.h" }
      module ranges_shuffle                  { private header "__algorithm/ranges_shuffle.h" }
      module ranges_sort                     { private header "__algorithm/ranges_sort.h" }
      module ranges_sort_heap                { private header "__algorithm/ranges_sort_heap.h" }
      module ranges_stable_partition         { private header "__algorithm/ranges_stable_partition.h" }
      module ranges_stable_sort              { private header "__algorithm/ranges_stable_sort.h" }
      module ranges_swap_ranges              { private header "__algorithm/ranges_swap_ranges.h" }
      module ranges_transform                { private header "__algorithm/ranges_transform.h" }
      module uniform_random_bit_generator_adaptor {
        private header "__algorithm/uniform_random_bit_generator_adaptor.h"
      }
      module ranges_unique                   { private header "__algorithm/ranges_unique.h" }
      module ranges_unique_copy              { private header "__algorithm/ranges_unique_copy.h" }
      module ranges_upper_bound              { private header "__algorithm/ranges_upper_bound.h" }
      module remove                          { private header "__algorithm/remove.h" }
      module remove_copy                     { private header "__algorithm/remove_copy.h" }
      module remove_copy_if                  { private header "__algorithm/remove_copy_if.h" }
      module remove_if                       { private header "__algorithm/remove_if.h" }
      module replace                         { private header "__algorithm/replace.h" }
      module replace_copy                    { private header "__algorithm/replace_copy.h" }
      module replace_copy_if                 { private header "__algorithm/replace_copy_if.h" }
      module replace_if                      { private header "__algorithm/replace_if.h" }
      module reverse                         { private header "__algorithm/reverse.h" }
      module reverse_copy                    { private header "__algorithm/reverse_copy.h" }
      module rotate                          { private header "__algorithm/rotate.h" }
      module rotate_copy                     { private header "__algorithm/rotate_copy.h" }
      module sample                          { private header "__algorithm/sample.h" }
      module search                          { private header "__algorithm/search.h" }
      module search_n                        { private header "__algorithm/search_n.h" }
      module set_difference                  { private header "__algorithm/set_difference.h" }
      module set_intersection                { private header "__algorithm/set_intersection.h" }
      module set_symmetric_difference        { private header "__algorithm/set_symmetric_difference.h" }
      module set_union                       { private header "__algorithm/set_union.h" }
      module shift_left                      { private header "__algorithm/shift_left.h" }
      module shift_right                     { private header "__algorithm/shift_right.h" }
      module shuffle                         { private header "__algorithm/shuffle.h" }
      module sift_down                       { private header "__algorithm/sift_down.h" }
      module sort                            { private header "__algorithm/sort.h" }
      module sort_heap                       { private header "__algorithm/sort_heap.h" }
      module stable_partition                { private header "__algorithm/stable_partition.h" }
      module stable_sort                     { private header "__algorithm/stable_sort.h" }
      module swap_ranges                     { private header "__algorithm/swap_ranges.h" }
      module transform                       { private header "__algorithm/transform.h" }
      module unique                          { private header "__algorithm/unique.h" }
      module unique_copy                     { private header "__algorithm/unique_copy.h" }
      module unwrap_iter                     { private header "__algorithm/unwrap_iter.h" }
      module unwrap_range                    { private header "__algorithm/unwrap_range.h" }
      module upper_bound                     { private header "__algorithm/upper_bound.h" }
    }
  }
  module any {
    header "any"
    export *
  }
  module array {
    header "array"
    export initializer_list
    export *
  }
  module atomic {
    header "atomic"
    export *
  }
  module barrier {
    @requires_LIBCXX_ENABLE_THREADS@
    header "barrier"
    export *
  }
  module bit {
    header "bit"
    export *

    module __bit {
      module bit_cast { private header "__bit/bit_cast.h" }
      module byteswap { private header "__bit/byteswap.h" }
    }
  }
  module bitset {
    header "bitset"
    export string
    export iosfwd
    export *
  }
  // No submodule for cassert. It fundamentally needs repeated, textual inclusion.
  module charconv {
    header "charconv"
    export *

    module __charconv {
      module chars_format      { private header "__charconv/chars_format.h" }
      module from_chars_result { private header "__charconv/from_chars_result.h" }
      module tables            { private header "__charconv/tables.h" }
      module to_chars_base_10  { private header "__charconv/to_chars_base_10.h" }
      module to_chars_result   { private header "__charconv/to_chars_result.h" }
    }

  }
  module chrono {
    header "chrono"
    export *

    module __chrono {
      module calendar              { private header "__chrono/calendar.h" }
      module convert_to_timespec   { private header "__chrono/convert_to_timespec.h" }
      module day                   { private header "__chrono/day.h" }
      module duration              { private header "__chrono/duration.h" }
      module file_clock            { private header "__chrono/file_clock.h" }
      module hh_mm_ss              { private header "__chrono/hh_mm_ss.h" }
      module high_resolution_clock {
        private header "__chrono/high_resolution_clock.h"
        export steady_clock
        export system_clock
      }
      module literals              { private header "__chrono/literals.h" }
      module month                 { private header "__chrono/month.h" }
      module month_weekday         { private header "__chrono/month_weekday.h" }
      module monthday              { private header "__chrono/monthday.h" }
      module steady_clock          { private header "__chrono/steady_clock.h" }
      module system_clock          { private header "__chrono/system_clock.h" }
      module time_point            { private header "__chrono/time_point.h" }
      module weekday               { private header "__chrono/weekday.h" }
      module year                  { private header "__chrono/year.h" }
      module year_month            { private header "__chrono/year_month.h" }
      module year_month_day        { private header "__chrono/year_month_day.h" }
      module year_month_weekday    { private header "__chrono/year_month_weekday.h" }
    }
  }
  module codecvt {
    @requires_LIBCXX_ENABLE_LOCALIZATION@
    header "codecvt"
    export *
  }
  module compare {
    header "compare"
    export *

    module __compare {
      module common_comparison_category     { private header "__compare/common_comparison_category.h" }
      module compare_partial_order_fallback { private header "__compare/compare_partial_order_fallback.h" }
      module compare_strong_order_fallback  { private header "__compare/compare_strong_order_fallback.h" }
      module compare_three_way              { private header "__compare/compare_three_way.h" }
      module compare_three_way_result       { private header "__compare/compare_three_way_result.h" }
      module compare_weak_order_fallback    { private header "__compare/compare_weak_order_fallback.h" }
      module is_eq                          { private header "__compare/is_eq.h" }
      module ordering                       { private header "__compare/ordering.h" }
      module partial_order                  { private header "__compare/partial_order.h" }
      module strong_order                   { private header "__compare/strong_order.h" }
      module synth_three_way                { private header "__compare/synth_three_way.h" }
      module three_way_comparable           { private header "__compare/three_way_comparable.h" }
      module weak_order                     { private header "__compare/weak_order.h" }
    }
  }
  module complex {
    header "complex"
    export *
  }
  module concepts {
    header "concepts"
    export *

    module __concepts {
      module arithmetic                 { private header "__concepts/arithmetic.h" }
      module assignable                 { private header "__concepts/assignable.h" }
      module boolean_testable           { private header "__concepts/boolean_testable.h" }
      module class_or_enum              { private header "__concepts/class_or_enum.h" }
      module common_reference_with      { private header "__concepts/common_reference_with.h" }
      module common_with                { private header "__concepts/common_with.h" }
      module constructible              { private header "__concepts/constructible.h" }
      module convertible_to             { private header "__concepts/convertible_to.h" }
      module copyable                   { private header "__concepts/copyable.h" }
      module derived_from               { private header "__concepts/derived_from.h" }
      module destructible               { private header "__concepts/destructible.h" }
      module different_from             { private header "__concepts/different_from.h" }
      module equality_comparable        { private header "__concepts/equality_comparable.h" }
      module invocable                  { private header "__concepts/invocable.h" }
      module movable                    { private header "__concepts/movable.h" }
      module predicate                  { private header "__concepts/predicate.h" }
      module regular                    { private header "__concepts/regular.h" }
      module relation                   { private header "__concepts/relation.h" }
      module same_as                    { private header "__concepts/same_as.h" }
      module semiregular                { private header "__concepts/semiregular.h" }
      module swappable                  { private header "__concepts/swappable.h" }
      module totally_ordered            { private header "__concepts/totally_ordered.h" }
    }
  }
  module condition_variable {
    header "condition_variable"
    export *
  }
  module coroutine {
    requires coroutines
    header "coroutine"
    export compare
    export *

    module __coroutine {
      module coroutine_handle           { private header "__coroutine/coroutine_handle.h" }
      module coroutine_traits           { private header "__coroutine/coroutine_traits.h" }
      module noop_coroutine_handle      { private header "__coroutine/noop_coroutine_handle.h" }
      module trivial_awaitables         { private header "__coroutine/trivial_awaitables.h" }
    }
  }
  module deque {
    header "deque"
    export initializer_list
    export *
  }
  module exception {
    header "exception"
    export *
  }
  module execution {
    header "execution"
    export *
  }
  module filesystem {
    @requires_LIBCXX_ENABLE_FILESYSTEM@
    header "filesystem"
    export *

    module __filesystem {
      module copy_options                 { private header "__filesystem/copy_options.h" }
      module directory_entry              { private header "__filesystem/directory_entry.h" }
      module directory_iterator           { private header "__filesystem/directory_iterator.h" }
      module directory_options            { private header "__filesystem/directory_options.h" }
      module file_status                  { private header "__filesystem/file_status.h" }
      module file_time_type               { private header "__filesystem/file_time_type.h" }
      module file_type                    { private header "__filesystem/file_type.h" }
      module filesystem_error             { private header "__filesystem/filesystem_error.h" }
      module operations                   { private header "__filesystem/operations.h" }
      module path                         { private header "__filesystem/path.h" }
      module path_iterator                { private header "__filesystem/path_iterator.h" }
      module perm_options                 { private header "__filesystem/perm_options.h" }
      module perms                        { private header "__filesystem/perms.h" }
      module recursive_directory_iterator { private header "__filesystem/recursive_directory_iterator.h" }
      module space_info                   { private header "__filesystem/space_info.h" }
      module u8path                       { private header "__filesystem/u8path.h" }
    }
  }
  module format {
    header "format"
    export *

    module __format {
      module buffer                          { private header "__format/buffer.h" }
      module concepts                        { private header "__format/concepts.h" }
      module enable_insertable               { private header "__format/enable_insertable.h" }
      module extended_grapheme_cluster_table { private header "__format/extended_grapheme_cluster_table.h" }
      module format_arg                      { private header "__format/format_arg.h" }
      module format_arg_store                { private header "__format/format_arg_store.h" }
      module format_args                     { private header "__format/format_args.h" }
      module format_context {
        private header "__format/format_context.h"
        export optional
        export locale
      }
      module format_error                    { private header "__format/format_error.h" }
      module format_fwd                      { private header "__format/format_fwd.h" }
      module format_parse_context            { private header "__format/format_parse_context.h" }
      module format_string                   { private header "__format/format_string.h" }
      module format_to_n_result              { private header "__format/format_to_n_result.h" }
      module formatter                       { private header "__format/formatter.h" }
      module formatter_bool                  { private header "__format/formatter_bool.h" }
      module formatter_char                  { private header "__format/formatter_char.h" }
      module formatter_floating_point        { private header "__format/formatter_floating_point.h" }
      module formatter_integer               { private header "__format/formatter_integer.h" }
      module formatter_integral              { private header "__format/formatter_integral.h" }
      module formatter_output                { private header "__format/formatter_output.h" }
      module formatter_pointer               { private header "__format/formatter_pointer.h" }
      module formatter_string                { private header "__format/formatter_string.h" }
      module parser_std_format_spec          { private header "__format/parser_std_format_spec.h" }
      module unicode                         { private header "__format/unicode.h" }
    }
  }
  module forward_list {
    header "forward_list"
    export initializer_list
    export *
  }
  module fstream {
    @requires_LIBCXX_ENABLE_LOCALIZATION@
    header "fstream"
    export *
  }
  module functional {
    header "functional"
    export *

    module __functional {
      module binary_function            { private header "__functional/binary_function.h" }
      module binary_negate              { private header "__functional/binary_negate.h" }
      module bind                       { private header "__functional/bind.h" }
      module bind_back                  { private header "__functional/bind_back.h" }
      module bind_front                 { private header "__functional/bind_front.h" }
      module binder1st                  { private header "__functional/binder1st.h" }
      module binder2nd                  { private header "__functional/binder2nd.h" }
      module boyer_moore_searcher       { private header "__functional/boyer_moore_searcher.h" }
      module compose                    { private header "__functional/compose.h" }
      module default_searcher           { private header "__functional/default_searcher.h" }
      module function                   { private header "__functional/function.h" }
      module hash                       { private header "__functional/hash.h" }
      module identity                   { private header "__functional/identity.h" }
      module invoke                     { private header "__functional/invoke.h" }
      module is_transparent             { private header "__functional/is_transparent.h" }
      module mem_fn                     { private header "__functional/mem_fn.h" }
      module mem_fun_ref                { private header "__functional/mem_fun_ref.h" }
      module not_fn                     { private header "__functional/not_fn.h" }
      module operations                 { private header "__functional/operations.h" }
      module perfect_forward            { private header "__functional/perfect_forward.h" }
      module pointer_to_binary_function { private header "__functional/pointer_to_binary_function.h" }
      module pointer_to_unary_function  { private header "__functional/pointer_to_unary_function.h" }
      module ranges_operations          { private header "__functional/ranges_operations.h" }
      module reference_wrapper          { private header "__functional/reference_wrapper.h" }
      module unary_function             { private header "__functional/unary_function.h" }
      module unary_negate               { private header "__functional/unary_negate.h" }
      module unwrap_ref                 { private header "__functional/unwrap_ref.h" }
      module weak_result_type           { private header "__functional/weak_result_type.h" }
    }
  }
  module future {
    @requires_LIBCXX_ENABLE_THREADS@
    header "future"
    export *
  }
  module initializer_list {
    header "initializer_list"
    export *
  }
  module iomanip {
    @requires_LIBCXX_ENABLE_LOCALIZATION@
    header "iomanip"
    export *
  }
  module ios {
    @requires_LIBCXX_ENABLE_LOCALIZATION@
    header "ios"
    export iosfwd
    export *

    module __ios {
      module fpos { private header "__ios/fpos.h" }
    }
  }
  module iosfwd {
    header "iosfwd"
    export *
  }
  module iostream {
    @requires_LIBCXX_ENABLE_LOCALIZATION@
    header "iostream"
    export ios
    export streambuf
    export istream
    export ostream
    export *
  }
  module istream {
    @requires_LIBCXX_ENABLE_LOCALIZATION@
    header "istream"
    // FIXME: should re-export ios, streambuf?
    export *
  }
  module iterator {
    header "iterator"
    export *

    module __iterator {
      module access                { private header "__iterator/access.h" }
      module advance               { private header "__iterator/advance.h" }
      module back_insert_iterator  { private header "__iterator/back_insert_iterator.h" }
      module bounded_iter          { private header "__iterator/bounded_iter.h" }
      module common_iterator       { private header "__iterator/common_iterator.h" }
      module concepts              { private header "__iterator/concepts.h" }
      module counted_iterator      { private header "__iterator/counted_iterator.h" }
      module data                  { private header "__iterator/data.h" }
      module default_sentinel      { private header "__iterator/default_sentinel.h" }
      module distance              { private header "__iterator/distance.h" }
      module empty                 { private header "__iterator/empty.h" }
      module erase_if_container    { private header "__iterator/erase_if_container.h" }
      module front_insert_iterator { private header "__iterator/front_insert_iterator.h" }
      module incrementable_traits  { private header "__iterator/incrementable_traits.h" }
      module indirectly_comparable { private header "__iterator/indirectly_comparable.h" }
      module insert_iterator       { private header "__iterator/insert_iterator.h" }
      module istream_iterator      { private header "__iterator/istream_iterator.h" }
      module istreambuf_iterator   { private header "__iterator/istreambuf_iterator.h" }
      module iter_move             { private header "__iterator/iter_move.h" }
      module iter_swap             { private header "__iterator/iter_swap.h" }
      module iterator              { private header "__iterator/iterator.h" }
      module iterator_traits       { private header "__iterator/iterator_traits.h" }
      module mergeable             { private header "__iterator/mergeable.h" }
      module move_iterator         { private header "__iterator/move_iterator.h" }
      module move_sentinel         { private header "__iterator/move_sentinel.h" }
      module next                  { private header "__iterator/next.h" }
      module ostream_iterator      { private header "__iterator/ostream_iterator.h" }
      module ostreambuf_iterator   {
        private header "__iterator/ostreambuf_iterator.h"
        export iosfwd
      }
      module permutable            { private header "__iterator/permutable.h" }
      module prev                  { private header "__iterator/prev.h" }
      module projected             { private header "__iterator/projected.h" }
      module readable_traits       { private header "__iterator/readable_traits.h" }
      module reverse_access        { private header "__iterator/reverse_access.h" }
      module reverse_iterator      { private header "__iterator/reverse_iterator.h" }
      module size                  { private header "__iterator/size.h" }
      module sortable              { private header "__iterator/sortable.h" }
      module unreachable_sentinel  { private header "__iterator/unreachable_sentinel.h" }
      module wrap_iter             { private header "__iterator/wrap_iter.h" }
    }
  }
  module latch {
    @requires_LIBCXX_ENABLE_THREADS@
    header "latch"
    export *
  }

  module __debug_utils {
    module randomize_range { private header "__debug_utils/randomize_range.h" }
  }

  module limits {
    header "limits"
    export *
  }
  module list {
    header "list"
    export initializer_list
    export *
  }
  module locale {
    @requires_LIBCXX_ENABLE_LOCALIZATION@
    header "locale"
    export *
  }
  module map {
    header "map"
    export initializer_list
    export *
  }
  module memory {
    header "memory"
    export *

    module __memory {
      module addressof                       { private header "__memory/addressof.h" }
      module allocate_at_least               { private header "__memory/allocate_at_least.h" }
      module allocation_guard                { private header "__memory/allocation_guard.h" }
      module allocator                       { private header "__memory/allocator.h" }
      module allocator_arg_t                 { private header "__memory/allocator_arg_t.h" }
      module allocator_traits                { private header "__memory/allocator_traits.h" }
      module assume_aligned                  { private header "__memory/assume_aligned.h" }
      module auto_ptr                        { private header "__memory/auto_ptr.h" }
      module compressed_pair                 { private header "__memory/compressed_pair.h" }
      module concepts                        { private header "__memory/concepts.h" }
      module construct_at                    { private header "__memory/construct_at.h" }
      module pointer_traits                  { private header "__memory/pointer_traits.h" }
      module ranges_construct_at             { private header "__memory/ranges_construct_at.h" }
      module ranges_uninitialized_algorithms { private header "__memory/ranges_uninitialized_algorithms.h" }
      module raw_storage_iterator            { private header "__memory/raw_storage_iterator.h" }
      module shared_ptr                      { private header "__memory/shared_ptr.h" }
      module swap_allocator                  { private header "__memory/swap_allocator.h" }
      module temporary_buffer                { private header "__memory/temporary_buffer.h" }
      module uninitialized_algorithms        { private header "__memory/uninitialized_algorithms.h" }
      module unique_ptr                      { private header "__memory/unique_ptr.h" }
      module uses_allocator                  { private header "__memory/uses_allocator.h" }
      module voidify                         { private header "__memory/voidify.h" }
    }
  }
  module mutex {
    @requires_LIBCXX_ENABLE_THREADS@
    header "mutex"
    export *
  }
  module new {
    header "new"
    export *
  }
  module numbers {
    header "numbers"
    export *
  }
  module numeric {
    header "numeric"
    export *

    module __numeric {
      module accumulate               { private header "__numeric/accumulate.h" }
      module adjacent_difference      { private header "__numeric/adjacent_difference.h" }
      module exclusive_scan           { private header "__numeric/exclusive_scan.h" }
      module gcd_lcm                  { private header "__numeric/gcd_lcm.h" }
      module inclusive_scan           { private header "__numeric/inclusive_scan.h" }
      module inner_product            { private header "__numeric/inner_product.h" }
      module iota                     { private header "__numeric/iota.h" }
      module midpoint                 { private header "__numeric/midpoint.h" }
      module partial_sum              { private header "__numeric/partial_sum.h" }
      module reduce                   { private header "__numeric/reduce.h" }
      module transform_exclusive_scan { private header "__numeric/transform_exclusive_scan.h" }
      module transform_inclusive_scan { private header "__numeric/transform_inclusive_scan.h" }
      module transform_reduce         { private header "__numeric/transform_reduce.h" }
    }
  }
  module optional {
    header "optional"
    export *
  }
  module ostream {
    @requires_LIBCXX_ENABLE_LOCALIZATION@
    header "ostream"
    // FIXME: should re-export ios, streambuf?
    export *
  }
  module queue {
    header "queue"
    export initializer_list
    export *
  }
  module random {
    header "random"
    export initializer_list
    export *

    module __random {
      module bernoulli_distribution          { private header "__random/bernoulli_distribution.h" }
      module binomial_distribution           { private header "__random/binomial_distribution.h" }
      module cauchy_distribution             { private header "__random/cauchy_distribution.h" }
      module chi_squared_distribution        { private header "__random/chi_squared_distribution.h" }
      module clamp_to_integral               { private header "__random/clamp_to_integral.h" }
      module default_random_engine           { private header "__random/default_random_engine.h" }
      module discard_block_engine            { private header "__random/discard_block_engine.h" }
      module discrete_distribution           { private header "__random/discrete_distribution.h" }
      module exponential_distribution        { private header "__random/exponential_distribution.h" }
      module extreme_value_distribution      { private header "__random/extreme_value_distribution.h" }
      module fisher_f_distribution           { private header "__random/fisher_f_distribution.h" }
      module gamma_distribution              { private header "__random/gamma_distribution.h" }
      module generate_canonical              { private header "__random/generate_canonical.h" }
      module geometric_distribution          { private header "__random/geometric_distribution.h" }
      module independent_bits_engine         { private header "__random/independent_bits_engine.h" }
      module is_seed_sequence                { private header "__random/is_seed_sequence.h" }
      module is_valid                        { private header "__random/is_valid.h" }
      module knuth_b                         { private header "__random/knuth_b.h" }
      module linear_congruential_engine      { private header "__random/linear_congruential_engine.h" }
      module log2                            { private header "__random/log2.h" }
      module lognormal_distribution          { private header "__random/lognormal_distribution.h" }
      module mersenne_twister_engine         { private header "__random/mersenne_twister_engine.h" }
      module negative_binomial_distribution  { private header "__random/negative_binomial_distribution.h" }
      module normal_distribution             { private header "__random/normal_distribution.h" }
      module piecewise_constant_distribution { private header "__random/piecewise_constant_distribution.h" }
      module piecewise_linear_distribution   { private header "__random/piecewise_linear_distribution.h" }
      module poisson_distribution            { private header "__random/poisson_distribution.h" }
      module random_device                   { private header "__random/random_device.h" }
      module ranlux                          { private header "__random/ranlux.h" }
      module seed_seq                        { private header "__random/seed_seq.h" }
      module shuffle_order_engine            { private header "__random/shuffle_order_engine.h" }
      module student_t_distribution          { private header "__random/student_t_distribution.h" }
      module subtract_with_carry_engine      { private header "__random/subtract_with_carry_engine.h" }
      module uniform_int_distribution        { private header "__random/uniform_int_distribution.h" }
      module uniform_random_bit_generator    { private header "__random/uniform_random_bit_generator.h" }
      module uniform_real_distribution       { private header "__random/uniform_real_distribution.h" }
      module weibull_distribution            { private header "__random/weibull_distribution.h" }
    }
  }
  module ranges {
    header "ranges"
    export compare
    export initializer_list
    export iterator
    export *

    module __ranges {
      module access                 { private header "__ranges/access.h" }
      module all                    {
        private header "__ranges/all.h"
        export functional.__functional.compose
        export functional.__functional.perfect_forward
      }
      module common_view            { private header "__ranges/common_view.h" }
      module concepts               { private header "__ranges/concepts.h" }
      module copyable_box           { private header "__ranges/copyable_box.h" }
      module counted                {
        private header "__ranges/counted.h"
        export span
      }
      module dangling               { private header "__ranges/dangling.h" }
      module data                   { private header "__ranges/data.h" }
      module drop_view              { private header "__ranges/drop_view.h" }
      module empty                  { private header "__ranges/empty.h" }
      module empty_view             { private header "__ranges/empty_view.h" }
      module enable_borrowed_range  { private header "__ranges/enable_borrowed_range.h" }
      module enable_view            { private header "__ranges/enable_view.h" }
      module filter_view            { private header "__ranges/filter_view.h" }
      module iota_view              { private header "__ranges/iota_view.h" }
      module join_view              { private header "__ranges/join_view.h" }
      module lazy_split_view        { private header "__ranges/lazy_split_view.h" }
      module non_propagating_cache  { private header "__ranges/non_propagating_cache.h" }
      module owning_view            { private header "__ranges/owning_view.h" }
      module range_adaptor          { private header "__ranges/range_adaptor.h" }
      module rbegin                 { private header "__ranges/rbegin.h" }
      module ref_view               { private header "__ranges/ref_view.h" }
      module rend                   { private header "__ranges/rend.h" }
      module reverse_view           { private header "__ranges/reverse_view.h" }
      module single_view            { private header "__ranges/single_view.h" }
      module size                   { private header "__ranges/size.h" }
      module subrange               { private header "__ranges/subrange.h" }
      module take_view              { private header "__ranges/take_view.h" }
      module transform_view         {
        private header "__ranges/transform_view.h"
        export functional.__functional.bind_back
        export functional.__functional.perfect_forward
      }
      module view_interface         { private header "__ranges/view_interface.h" }
      module views                  { private header "__ranges/views.h" }
      module zip_view               { private header "__ranges/zip_view.h" }
    }
  }
  module ratio {
    header "ratio"
    export *
  }
  module regex {
    @requires_LIBCXX_ENABLE_LOCALIZATION@
    header "regex"
    export initializer_list
    export *
  }
  module scoped_allocator {
    header "scoped_allocator"
    export *
  }
  module semaphore {
    @requires_LIBCXX_ENABLE_THREADS@
    header "semaphore"
    export *
  }
  module set {
    header "set"
    export initializer_list
    export *
  }
  module shared_mutex {
    @requires_LIBCXX_ENABLE_THREADS@
    header "shared_mutex"
    export version
  }
  module span {
    header "span"
    export ranges.__ranges.enable_borrowed_range
    export version
    module span_fwd { private header "__fwd/span.h" }
  }
  module sstream {
    @requires_LIBCXX_ENABLE_LOCALIZATION@
    header "sstream"
    // FIXME: should re-export istream, ostream, ios, streambuf, string?
    export *
  }
  module stack {
    header "stack"
    export initializer_list
    export *
  }
  module stdexcept {
    header "stdexcept"
    export *
  }
  module streambuf {
    @requires_LIBCXX_ENABLE_LOCALIZATION@
    header "streambuf"
    export *
  }
  module string {
    header "string"
    export initializer_list
    export string_view
    module __string {
      module char_traits           { private header "__string/char_traits.h" }
      module extern_template_lists { private header "__string/extern_template_lists.h" }
    }
    export *
  }
  module string_view {
    header "string_view"
    export initializer_list
    export *
    module string_view_fwd { private header "__fwd/string_view.h" }
  }
  module strstream {
    @requires_LIBCXX_ENABLE_LOCALIZATION@
    header "strstream"
    export *
  }
  module system_error {
    header "system_error"
    export *
  }
  module thread {
    @requires_LIBCXX_ENABLE_THREADS@
    header "thread"
    export *

    module __thread {
      module poll_with_backoff    { private header "__thread/poll_with_backoff.h" }
      module timed_backoff_policy { private header "__thread/timed_backoff_policy.h" }
    }
  }
  module tuple {
    header "tuple"
    export *
  }
  module type_traits {
    header "type_traits"
    export functional.__functional.unwrap_ref
    export *

    module add_const                          { private header "__type_traits/add_const.h" }
    module add_cv                             { private header "__type_traits/add_cv.h" }
    module add_lvalue_reference               { private header "__type_traits/add_lvalue_reference.h" }
    module add_pointer                        { private header "__type_traits/add_pointer.h" }
    module add_rvalue_reference               { private header "__type_traits/add_rvalue_reference.h" }
    module add_volatile                       { private header "__type_traits/add_volatile.h" }
    module aligned_storage                    { private header "__type_traits/aligned_storage.h" }
    module aligned_union                      { private header "__type_traits/aligned_union.h" }
    module alignment_of                       { private header "__type_traits/alignment_of.h" }
    module apply_cv                           { private header "__type_traits/apply_cv.h" }
    module common_reference                   { private header "__type_traits/common_reference.h" }
    module common_type                        { private header "__type_traits/common_type.h" }
    module conditional                        { private header "__type_traits/conditional.h" }
    module conjunction                        { private header "__type_traits/conjunction.h" }
    module copy_cv                            { private header "__type_traits/copy_cv.h" }
    module copy_cvref                         { private header "__type_traits/copy_cvref.h" }
    module decay                              { private header "__type_traits/decay.h" }
    module disjunction                        { private header "__type_traits/disjunction.h" }
    module enable_if                          { private header "__type_traits/enable_if.h" }
    module extent                             { private header "__type_traits/extent.h" }
    module has_unique_object_representation   { private header "__type_traits/has_unique_object_representation.h" }
    module has_virtual_destructor             { private header "__type_traits/has_virtual_destructor.h" }
    module integral_constant                  { private header "__type_traits/integral_constant.h" }
    module is_abstract                        { private header "__type_traits/is_abstract.h" }
    module is_aggregate                       { private header "__type_traits/is_aggregate.h" }
    module is_arithmetic                      { private header "__type_traits/is_arithmetic.h" }
    module is_array                           { private header "__type_traits/is_array.h" }
    module is_assignable                      { private header "__type_traits/is_assignable.h" }
    module is_base_of                         { private header "__type_traits/is_base_of.h" }
    module is_bounded_array                   { private header "__type_traits/is_bounded_array.h" }
    module is_callable                        { private header "__type_traits/is_callable.h" }
    module is_class                           { private header "__type_traits/is_class.h" }
    module is_compound                        { private header "__type_traits/is_compound.h" }
    module is_const                           { private header "__type_traits/is_const.h" }
    module is_constant_evaluated              { private header "__type_traits/is_constant_evaluated.h" }
    module is_constructible                   { private header "__type_traits/is_constructible.h" }
    module is_convertible                     { private header "__type_traits/is_convertible.h" }
    module is_copy_assignable                 { private header "__type_traits/is_copy_assignable.h" }
    module is_copy_constructible              { private header "__type_traits/is_copy_constructible.h" }
    module is_core_convertible                { private header "__type_traits/is_core_convertible.h" }
    module is_default_constructible           { private header "__type_traits/is_default_constructible.h" }
    module is_destructible                    { private header "__type_traits/is_destructible.h" }
    module is_empty                           { private header "__type_traits/is_empty.h" }
    module is_enum                            { private header "__type_traits/is_enum.h" }
    module is_final                           { private header "__type_traits/is_final.h" }
    module is_floating_point                  { private header "__type_traits/is_floating_point.h" }
    module is_function                        { private header "__type_traits/is_function.h" }
    module is_fundamental                     { private header "__type_traits/is_fundamental.h" }
    module is_integral                        { private header "__type_traits/is_integral.h" }
    module is_literal_type                    { private header "__type_traits/is_literal_type.h" }
    module is_member_function_pointer         { private header "__type_traits/is_member_function_pointer.h" }
    module is_member_object_pointer           { private header "__type_traits/is_member_object_pointer.h" }
    module is_member_pointer                  { private header "__type_traits/is_member_pointer.h" }
    module is_move_assignable                 { private header "__type_traits/is_move_assignable.h" }
    module is_move_constructible              { private header "__type_traits/is_move_constructible.h" }
    module is_nothrow_assignable              { private header "__type_traits/is_nothrow_assignable.h" }
    module is_nothrow_constructible           { private header "__type_traits/is_nothrow_constructible.h" }
    module is_nothrow_convertible             { private header "__type_traits/is_nothrow_convertible.h" }
    module is_nothrow_copy_assignable         { private header "__type_traits/is_nothrow_copy_assignable.h" }
    module is_nothrow_copy_constructible      { private header "__type_traits/is_nothrow_copy_constructible.h" }
    module is_nothrow_default_constructible   { private header "__type_traits/is_nothrow_default_constructible.h" }
    module is_nothrow_destructible            { private header "__type_traits/is_nothrow_destructible.h" }
    module is_nothrow_move_assignable         { private header "__type_traits/is_nothrow_move_assignable.h" }
    module is_nothrow_move_constructible      { private header "__type_traits/is_nothrow_move_constructible.h" }
    module is_null_pointer                    { private header "__type_traits/is_null_pointer.h" }
    module is_object                          { private header "__type_traits/is_object.h" }
    module is_pod                             { private header "__type_traits/is_pod.h" }
    module is_pointer                         { private header "__type_traits/is_pointer.h" }
    module is_polymorphic                     { private header "__type_traits/is_polymorphic.h" }
    module is_primary_template                { private header "__type_traits/is_primary_template.h" }
    module is_reference                       { private header "__type_traits/is_reference.h" }
    module is_reference_wrapper               { private header "__type_traits/is_reference_wrapper.h" }
    module is_referenceable                   { private header "__type_traits/is_referenceable.h" }
    module is_same                            { private header "__type_traits/is_same.h" }
    module is_scalar                          { private header "__type_traits/is_scalar.h" }
    module is_scoped_enum                     { private header "__type_traits/is_scoped_enum.h" }
    module is_signed                          { private header "__type_traits/is_signed.h" }
    module is_signed_integer                  { private header "__type_traits/is_signed_integer.h" }
    module is_standard_layout                 { private header "__type_traits/is_standard_layout.h" }
    module is_trivial                         { private header "__type_traits/is_trivial.h" }
    module is_trivially_assignable            { private header "__type_traits/is_trivially_assignable.h" }
    module is_trivially_constructible         { private header "__type_traits/is_trivially_constructible.h" }
    module is_trivially_copy_assignable       { private header "__type_traits/is_trivially_copy_assignable.h" }
    module is_trivially_copy_constructible    { private header "__type_traits/is_trivially_copy_constructible.h" }
    module is_trivially_copyable              { private header "__type_traits/is_trivially_copyable.h" }
    module is_trivially_default_constructible { private header "__type_traits/is_trivially_default_constructible.h" }
    module is_trivially_destructible          { private header "__type_traits/is_trivially_destructible.h" }
    module is_trivially_move_assignable       { private header "__type_traits/is_trivially_move_assignable.h" }
    module is_trivially_move_constructible    { private header "__type_traits/is_trivially_move_constructible.h" }
    module is_unbounded_array                 { private header "__type_traits/is_unbounded_array.h" }
    module is_union                           { private header "__type_traits/is_union.h" }
    module is_unsigned                        { private header "__type_traits/is_unsigned.h" }
    module is_unsigned_integer                { private header "__type_traits/is_unsigned_integer.h" }
    module is_valid_expansion                 { private header "__type_traits/is_valid_expansion.h" }
    module is_void                            { private header "__type_traits/is_void.h" }
    module is_volatile                        { private header "__type_traits/is_volatile.h" }
    module lazy                               { private header "__type_traits/lazy.h" }
    module make_32_64_or_128_bit              { private header "__type_traits/make_32_64_or_128_bit.h" }
    module make_signed                        { private header "__type_traits/make_signed.h" }
    module make_unsigned                      { private header "__type_traits/make_unsigned.h" }
    module nat                                { private header "__type_traits/nat.h" }
    module negation                           { private header "__type_traits/negation.h" }
    module promote                            { private header "__type_traits/promote.h" }
    module rank                               { private header "__type_traits/rank.h" }
    module remove_all_extents                 { private header "__type_traits/remove_all_extents.h" }
    module remove_const                       { private header "__type_traits/remove_const.h" }
    module remove_cv                          { private header "__type_traits/remove_cv.h" }
    module remove_cvref                       { private header "__type_traits/remove_cvref.h" }
    module remove_extent                      { private header "__type_traits/remove_extent.h" }
    module remove_pointer                     { private header "__type_traits/remove_pointer.h" }
    module remove_reference                   { private header "__type_traits/remove_reference.h" }
    module remove_volatile                    { private header "__type_traits/remove_volatile.h" }
    module type_identity                      { private header "__type_traits/type_identity.h" }
    module type_list                          { private header "__type_traits/type_list.h" }
    module underlying_type                    { private header "__type_traits/underlying_type.h" }
    module void_t                             { private header "__type_traits/void_t.h" }
  }
  module typeindex {
    header "typeindex"
    export *
  }
  module typeinfo {
    header "typeinfo"
    export *
  }
  module unordered_map {
    header "unordered_map"
    export initializer_list
    export *
  }
  module unordered_set {
    header "unordered_set"
    export initializer_list
    export *
  }
  module utility {
    header "utility"
    export initializer_list
    export *

    module __utility {
      module as_const            { private header "__utility/as_const.h" }
      module auto_cast           { private header "__utility/auto_cast.h" }
      module cmp                 { private header "__utility/cmp.h" }
      module declval             { private header "__utility/declval.h" }
      module exchange            { private header "__utility/exchange.h" }
      module forward             { private header "__utility/forward.h" }
      module in_place            { private header "__utility/in_place.h" }
      module integer_sequence    { private header "__utility/integer_sequence.h" }
      module move                { private header "__utility/move.h" }
      module pair                { private header "__utility/pair.h" }
      module piecewise_construct { private header "__utility/piecewise_construct.h" }
      module priority_tag        { private header "__utility/priority_tag.h" }
      module rel_ops             { private header "__utility/rel_ops.h" }
      module swap                { private header "__utility/swap.h" }
      module to_underlying       { private header "__utility/to_underlying.h" }
      module transaction         { private header "__utility/transaction.h" }
      module unreachable         { private header "__utility/unreachable.h" }
    }
  }
  module valarray {
    header "valarray"
    export initializer_list
    export *
  }
  module variant {
    header "variant"
    export *

    module __variant {
      module monostate { private header "__variant/monostate.h" }
    }
  }
  module vector {
    header "vector"
    export initializer_list
    export *
  }
  module version {
    header "version"
    export *
  }

  // FIXME: These should be private.
  module __assert            {         header "__assert"            export * }
  module __availability      { private header "__availability"      export * }
  module __bit_reference     { private header "__bit_reference"     export * }
  module __bits              { private header "__bits"              export * }
  module __debug             {         header "__debug"             export * }
  module __errc              { private header "__errc"              export * }
  module __hash_table        {         header "__hash_table"        export * }
  module __locale            {
    @requires_LIBCXX_ENABLE_LOCALIZATION@
    private header "__locale" export *
  }
  module __mbstate_t         { private header "__mbstate_t.h"       export * }
  module __mutex_base        { private header "__mutex_base"        export * }
  module __node_handle       { private header "__node_handle"       export * }
  module __split_buffer      { private header "__split_buffer"      export * }
  module __std_stream        {
    @requires_LIBCXX_ENABLE_LOCALIZATION@
    private header "__std_stream" export *
  }
  module __threading_support {         header "__threading_support" export * }
  module __tree              {         header "__tree"              export * }
  module __tuple             { private header "__tuple"             export * }
  module __undef_macros      {         header "__undef_macros"      export * }
  module __verbose_abort     {         header "__verbose_abort"     export * }

  module experimental {
    requires cplusplus11

    module algorithm {
      header "experimental/algorithm"
      export *
    }
    module coroutine {
      requires coroutines
      header "experimental/coroutine"
      export *
    }
    module deque {
      header "experimental/deque"
      export *
    }
    module forward_list {
      header "experimental/forward_list"
      export *
    }
    module functional {
      header "experimental/functional"
      export *
    }
    module iterator {
      header "experimental/iterator"
      export *
    }
    module list {
      header "experimental/list"
      export *
    }
    module map {
      header "experimental/map"
      export *
    }
    module memory_resource {
      header "experimental/memory_resource"
      export *
    }
    module propagate_const {
      header "experimental/propagate_const"
      export *
    }
    module regex {
      @requires_LIBCXX_ENABLE_LOCALIZATION@
      header "experimental/regex"
      export *
    }
    module simd {
      header "experimental/simd"
      export *
    }
    module set {
      header "experimental/set"
      export *
    }
    module span {
      header "span"
      export *
    }
    module string {
      header "experimental/string"
      export *
    }
    module type_traits {
      header "experimental/type_traits"
      export *
    }
    module unordered_map {
      header "experimental/unordered_map"
      export *
    }
    module unordered_set {
      header "experimental/unordered_set"
      export *
    }
    module utility {
      header "experimental/utility"
      export *
    }
    module vector {
      header "experimental/vector"
      export *
    }
    // FIXME these should be private
    module __memory {
      header "experimental/__memory"
      export *
    }
  } // end experimental
}
