module c_library [extern_c] { module inner { header "c-header.h" } }
module cxx_library { header "cxx-header.h" requires cplusplus }
module c_library_bad [extern_c] { header "c-header-bad.h" }
module diamond_top { header "diamond_top.h" }
module diamond_left { 
  header "diamond_left.h" 
  export diamond_top
}
module diamond_right { 
  header "diamond_right.h" 
  export diamond_top
}
module diamond_bottom { 
  header "diamond_bottom.h" 
  export *
}
module irgen { header "irgen.h" }
module cxx_irgen_top { header "cxx-irgen-top.h" }
module cxx_irgen_left { header "cxx-irgen-left.h" }
module cxx_irgen_right { header "cxx-irgen-right.h" }
module lookup_left_objc { header "lookup_left.h" }
module lookup_right_objc { header "lookup_right.h" }
module lookup_left_cxx { header "lookup_left.hpp" }
module lookup_right_cxx { header "lookup_right.hpp" }
module module_private_left { header "module_private_left.h" }
module module_private_right { header "module_private_right.h" }
module macros_top { 
  header "macros_top.h" 
  explicit module b { header "macros_top_b.h" }
  explicit module c { header "macros_top_c.h" }
}
module macros_left { 
  header "macros_left.h" 
  export *
}
module macros_right { 
  header "macros_right.h" 
  export *
  explicit module undef {
    header "macros_right_undef.h"
  }
}
module macros_bottom { 
  header "macros_bottom.h" 
  export *
}
module macros { header "macros.h" }
module macros_other { header "macros_other.h" }
module category_top { header "category_top.h" }
module category_left { 
  header "category_left.h" 
  export category_top

  explicit module sub {
    header "category_left_sub.h"
  }
}
module category_right { 
  header "category_right.h" 
  export category_top

  explicit module sub {
    header "category_right_sub.h"
  }
}
module category_bottom { 
  header "category_bottom.h" 
  export category_left
  export category_right
}
module category_other { header "category_other.h" }
module redeclarations_left { header "redeclarations_left.h" }
module redeclarations_right { header "redeclarations_right.h" }
module redecl_namespaces_left { header "redecl_namespaces_left.h" }
module redecl_namespaces_right { header "redecl_namespaces_right.h" }
module redecl_add_after_load_top { header "redecl-add-after-load-top.h" }
module redecl_add_after_load_decls { header "redecl-add-after-load-decls.h" }
module redecl_add_after_load { header "redecl-add-after-load.h" }
module load_failure { header "load_failure.h" }

module decldef {
  explicit module Decl { header "decl.h" }
  explicit module Decl2 { header "decl2.h" }
  explicit module Def { header "def.h" }
}

module redecl_merge_top { 
  header "redecl-merge-top.h"
  explicit module Explicit { header "redecl-merge-top-explicit.h" }
  exclude header "nonexistent.h"
}
module redecl_merge_left { 
  header "redecl-merge-left.h" 
  export *
}
module redecl_merge_left_left { 
  header "redecl-merge-left-left.h" 
  export *
}
module redecl_merge_right { 
  header "redecl-merge-right.h" 
  export *
}
module redecl_merge_bottom { 
  explicit module prefix {
    header "redecl-merge-bottom-prefix.h"
  }

  header "redecl-merge-bottom.h" 
  export *
}
module namespaces_top { 
  header "namespaces-top.h"
  export *
}
module namespaces_left { 
  header "namespaces-left.h"
  export *
}
module namespaces_right { 
  header "namespaces-right.h"
  export *
}
module templates_top { 
  header "templates-top.h"
  export *
}
module templates_left { 
  header "templates-left.h"
  export *
}
module templates_right { 
  header "templates-right.h"
  export *
}
module MethodPoolA {
  header "MethodPoolA.h"

  explicit module Sub2 {
    header "MethodPoolASub2.h"
  }

  explicit module Sub {
    header "MethodPoolASub.h"
  }
}
module MethodPoolB {
  header "MethodPoolB.h"

  explicit module Sub2 {
    header "MethodPoolBSub2.h"
  }

  explicit module Sub {
    header "MethodPoolBSub.h"
  }
}
module import_decl {
  header "import-decl.h"
}

framework module * { 
  exclude NotAModule
}

module linkage_merge_left {
  explicit module sub {
    header "linkage-merge-sub.h"
  }
}

module autolink {
  header "autolink.h"
  link "autolink"

  explicit module sub {
    header "autolink-sub.h"
    link "autolink_sub"
  }

  explicit module sub2 {
    header "autolink-sub2.h"
    link framework "autolink_framework"
  }

  explicit module sub3 {
    header "autolink-sub3.h"
    link "autolink_from_pch"
  }
}

module weird_objc {
  header "weird_objc.h"
}

module ignored_macros {
  header "ignored_macros.h"
}

module cxx_many_overloads {
  header "cxx-many-overloads.h"
}

module cxx_inline_namespace {
  header "cxx-inline-namespace.h"
}

module cxx_inline_namespace_b {
  header "cxx-inline-namespace-b.h"
}

module cxx_linkage_cache {
  header "cxx-linkage-cache.h"
}

module cxx_templates_common {
  header "cxx-templates-common.h"

  explicit module unimported { header "cxx-templates-unimported.h" }
}

module cxx_templates_a {
  header "cxx-templates-a.h"
}

module cxx_templates_b_impl {
  header "cxx-templates-b-impl.h"
}

module cxx_templates_b {
  header "cxx-templates-b.h"
}

module cxx_templates_c {
  header "cxx-templates-c.h"
}

module cxx_templates_d {
  header "cxx-templates-d.h"
}

module cxx_decls {
  module unimported {
    header "cxx-decls-unimported.h"
  }
  module imported {
    header "cxx-decls-imported.h"
  }
}

module cxx_decls_premerged {
  header "cxx-decls-premerged.h"
}

module cxx_decls_merged {
  header "cxx-decls-merged.h"
}

module config {
  header "config.h"
  config_macros [exhaustive] WANT_FOO, WANT_BAR
}

module diag_pragma {
  header "diag_pragma.h"
}

module pragma_pack {
  module set { header "pragma_pack_set.h" }
  module empty { header "empty.h" }
}

module dummy {
  header "dummy.h"
}

module builtin {
  header "builtin.h"
  explicit module sub {
    header "builtin_sub.h"
  }
}

module linkage_merge {
  explicit module foo {
    header "linkage-merge-foo.h"
  }
  explicit module bar {
    header "linkage-merge-bar.h"
  }

}

module incomplete_mod {
  header "incomplete_mod.h"
}

module warning {
  header "warning.h"
}

module warn_unused_local_typedef {
  header "warn-unused-local-typedef.h"
}

module using_decl {
  module a { header "using-decl-a.h" export * }
  module b { header "using-decl-b.h" export * }
}

module recursive_visibility_a1 {
  module inner { header "recursive_visibility_a1_inner.h" }
}
module recursive_visibility_a2 {
  module inner {
    module more_inner {
      header "recursive_visibility_a2_more_inner.h"
    }
  }
}
module recursive_visibility_b {
  header "recursive_visibility_b.h"
  export *
}
module recursive_visibility_c {
  header "recursive_visibility_c.h"
}
module recursive1 {
  header "recursive1.h"
}
module recursive2 {
  header "recursive2.h"
}
module crash {
  header "crash.h"
}

module DebugCXX {
  header "DebugCXX.h"
}

module DebugObjC {
  header "DebugObjC.h"
}

module ImportNameInDir {
  header "ImportNameInDir.h"
  export *
}

module RequiresWithMissingHeader {
  module HeaderBefore {
    header "RequiresWithMissingHeader-Missing1.h"
    requires missing
  }
  module HeaderAfter {
    requires missing
    header "RequiresWithMissingHeader-Missing2.h"
  }
}

module TargetFeatures {
  module arm {
    requires arm
    module aarch32 { requires aarch32 }
    module aarch64 { requires aarch64 }
  }
  module x86 {
    requires x86
    module x86_32 { requires x86_32 }
    module x86_64 { requires x86_64 }
  }
}

module DebugSubmodules {
  module DebugSubmoduleA {
    header "DebugSubmoduleA.h"
    export *
  }
  module DebugSubmoduleB {
    header "DebugSubmoduleB.h"
    export *
  }
}

module ExtensionTestA {
  header "ExtensionTestA.h"
}

module TypedefTag {
  header "typedef-tag.h"
  explicit module Hidden {
    header "typedef-tag-hidden.h"
  }
}

module ElaboratedTypeStructs {
  module Empty {}
  module Structs {
    header "elaborated-type-structs.h"
  }
}

// We import a module, then declare a method with selector stringValue in
// MethodPoolCombined1.h. In MethodPoolCombined2.h, we import another module
// that also contains a method for selector stringValue. We make sure that
// the method pool entry for stringValue in this module is complete.
module MethodPoolCombined {
  header "MethodPoolCombined1.h"
  header "MethodPoolCombined2.h"
}

module MethodPoolString1 {
  header "MethodPoolString1.h"
}

module MethodPoolString2 {
  header "MethodPoolString2.h"
}

module Empty {}

module MacroFabs1 {
  header "MacroFabs1.h"
}

module DiagOutOfDate {
  header "DiagOutOfDate.h"
}

module DebugNestedA {
  header "DebugNestedA.h"
  export *
}

module DebugNestedB {
  header "DebugNestedB.h"
  export *
}

module objcAtKeywordMissingEnd {
  header "objcAtKeywordMissingEnd.h"
}
