xref: /llvm-project/clang/test/ARCMT/Inputs/module.modulemap (revision a171d248ca34b8b6f8de11d42a83ad981285963a)
1*a171d248SMichael Spencermodule c_library [extern_c] { module inner { header "c-header.h" } }
2*a171d248SMichael Spencermodule cxx_library { header "cxx-header.h" requires cplusplus }
3*a171d248SMichael Spencermodule c_library_bad [extern_c] { header "c-header-bad.h" }
4*a171d248SMichael Spencermodule diamond_top { header "diamond_top.h" }
5*a171d248SMichael Spencermodule diamond_left {
6*a171d248SMichael Spencer  header "diamond_left.h"
7*a171d248SMichael Spencer  export diamond_top
8*a171d248SMichael Spencer}
9*a171d248SMichael Spencermodule diamond_right {
10*a171d248SMichael Spencer  header "diamond_right.h"
11*a171d248SMichael Spencer  export diamond_top
12*a171d248SMichael Spencer}
13*a171d248SMichael Spencermodule diamond_bottom {
14*a171d248SMichael Spencer  header "diamond_bottom.h"
15*a171d248SMichael Spencer  export *
16*a171d248SMichael Spencer}
17*a171d248SMichael Spencermodule irgen { header "irgen.h" }
18*a171d248SMichael Spencermodule cxx_irgen_top { header "cxx-irgen-top.h" }
19*a171d248SMichael Spencermodule cxx_irgen_left { header "cxx-irgen-left.h" }
20*a171d248SMichael Spencermodule cxx_irgen_right { header "cxx-irgen-right.h" }
21*a171d248SMichael Spencermodule lookup_left_objc { header "lookup_left.h" }
22*a171d248SMichael Spencermodule lookup_right_objc { header "lookup_right.h" }
23*a171d248SMichael Spencermodule lookup_left_cxx { header "lookup_left.hpp" }
24*a171d248SMichael Spencermodule lookup_right_cxx { header "lookup_right.hpp" }
25*a171d248SMichael Spencermodule module_private_left { header "module_private_left.h" }
26*a171d248SMichael Spencermodule module_private_right { header "module_private_right.h" }
27*a171d248SMichael Spencermodule macros_top {
28*a171d248SMichael Spencer  header "macros_top.h"
29*a171d248SMichael Spencer  explicit module b { header "macros_top_b.h" }
30*a171d248SMichael Spencer  explicit module c { header "macros_top_c.h" }
31*a171d248SMichael Spencer}
32*a171d248SMichael Spencermodule macros_left {
33*a171d248SMichael Spencer  header "macros_left.h"
34*a171d248SMichael Spencer  export *
35*a171d248SMichael Spencer}
36*a171d248SMichael Spencermodule macros_right {
37*a171d248SMichael Spencer  header "macros_right.h"
38*a171d248SMichael Spencer  export *
39*a171d248SMichael Spencer  explicit module undef {
40*a171d248SMichael Spencer    header "macros_right_undef.h"
41*a171d248SMichael Spencer  }
42*a171d248SMichael Spencer}
43*a171d248SMichael Spencermodule macros { header "macros.h" }
44*a171d248SMichael Spencermodule macros_other { header "macros_other.h" }
45*a171d248SMichael Spencermodule category_top { header "category_top.h" }
46*a171d248SMichael Spencermodule category_left {
47*a171d248SMichael Spencer  header "category_left.h"
48*a171d248SMichael Spencer  export category_top
49*a171d248SMichael Spencer
50*a171d248SMichael Spencer  explicit module sub {
51*a171d248SMichael Spencer    header "category_left_sub.h"
52*a171d248SMichael Spencer  }
53*a171d248SMichael Spencer}
54*a171d248SMichael Spencermodule category_right {
55*a171d248SMichael Spencer  header "category_right.h"
56*a171d248SMichael Spencer  export category_top
57*a171d248SMichael Spencer
58*a171d248SMichael Spencer  explicit module sub {
59*a171d248SMichael Spencer    header "category_right_sub.h"
60*a171d248SMichael Spencer  }
61*a171d248SMichael Spencer}
62*a171d248SMichael Spencermodule category_bottom {
63*a171d248SMichael Spencer  header "category_bottom.h"
64*a171d248SMichael Spencer  export category_left
65*a171d248SMichael Spencer  export category_right
66*a171d248SMichael Spencer}
67*a171d248SMichael Spencermodule category_other { header "category_other.h" }
68*a171d248SMichael Spencermodule redeclarations_left { header "redeclarations_left.h" }
69*a171d248SMichael Spencermodule redeclarations_right { header "redeclarations_right.h" }
70*a171d248SMichael Spencermodule redecl_namespaces_left { header "redecl_namespaces_left.h" }
71*a171d248SMichael Spencermodule redecl_namespaces_right { header "redecl_namespaces_right.h" }
72*a171d248SMichael Spencermodule redecl_add_after_load_top { header "redecl-add-after-load-top.h" }
73*a171d248SMichael Spencermodule redecl_add_after_load { header "redecl-add-after-load.h" }
74*a171d248SMichael Spencermodule load_failure { header "load_failure.h" }
75*a171d248SMichael Spencer
76*a171d248SMichael Spencermodule decldef {
77*a171d248SMichael Spencer  explicit module Decl { header "decl.h" }
78*a171d248SMichael Spencer  explicit module Decl2 { header "decl2.h" }
79*a171d248SMichael Spencer  explicit module Def { header "def.h" }
80*a171d248SMichael Spencer}
81*a171d248SMichael Spencer
82*a171d248SMichael Spencermodule redecl_merge_top {
83*a171d248SMichael Spencer  header "redecl-merge-top.h"
84*a171d248SMichael Spencer  explicit module Explicit { header "redecl-merge-top-explicit.h" }
85*a171d248SMichael Spencer  exclude header "nonexistent.h"
86*a171d248SMichael Spencer}
87*a171d248SMichael Spencermodule redecl_merge_left {
88*a171d248SMichael Spencer  header "redecl-merge-left.h"
89*a171d248SMichael Spencer  export *
90*a171d248SMichael Spencer}
91*a171d248SMichael Spencermodule redecl_merge_left_left {
92*a171d248SMichael Spencer  header "redecl-merge-left-left.h"
93*a171d248SMichael Spencer  export *
94*a171d248SMichael Spencer}
95*a171d248SMichael Spencermodule redecl_merge_right {
96*a171d248SMichael Spencer  header "redecl-merge-right.h"
97*a171d248SMichael Spencer  export *
98*a171d248SMichael Spencer}
99*a171d248SMichael Spencermodule redecl_merge_bottom {
100*a171d248SMichael Spencer  explicit module prefix {
101*a171d248SMichael Spencer    header "redecl-merge-bottom-prefix.h"
102*a171d248SMichael Spencer  }
103*a171d248SMichael Spencer
104*a171d248SMichael Spencer  header "redecl-merge-bottom.h"
105*a171d248SMichael Spencer  export *
106*a171d248SMichael Spencer}
107*a171d248SMichael Spencermodule namespaces_top {
108*a171d248SMichael Spencer  header "namespaces-top.h"
109*a171d248SMichael Spencer  export *
110*a171d248SMichael Spencer}
111*a171d248SMichael Spencermodule namespaces_left {
112*a171d248SMichael Spencer  header "namespaces-left.h"
113*a171d248SMichael Spencer  export *
114*a171d248SMichael Spencer}
115*a171d248SMichael Spencermodule namespaces_right {
116*a171d248SMichael Spencer  header "namespaces-right.h"
117*a171d248SMichael Spencer  export *
118*a171d248SMichael Spencer}
119*a171d248SMichael Spencermodule templates_top {
120*a171d248SMichael Spencer  header "templates-top.h"
121*a171d248SMichael Spencer  export *
122*a171d248SMichael Spencer}
123*a171d248SMichael Spencermodule templates_left {
124*a171d248SMichael Spencer  header "templates-left.h"
125*a171d248SMichael Spencer  export *
126*a171d248SMichael Spencer}
127*a171d248SMichael Spencermodule templates_right {
128*a171d248SMichael Spencer  header "templates-right.h"
129*a171d248SMichael Spencer  export *
130*a171d248SMichael Spencer}
131*a171d248SMichael Spencermodule MethodPoolA {
132*a171d248SMichael Spencer  header "MethodPoolA.h"
133*a171d248SMichael Spencer
134*a171d248SMichael Spencer  explicit module Sub2 {
135*a171d248SMichael Spencer    header "MethodPoolASub2.h"
136*a171d248SMichael Spencer  }
137*a171d248SMichael Spencer
138*a171d248SMichael Spencer  explicit module Sub {
139*a171d248SMichael Spencer    header "MethodPoolASub.h"
140*a171d248SMichael Spencer  }
141*a171d248SMichael Spencer}
142*a171d248SMichael Spencermodule MethodPoolB {
143*a171d248SMichael Spencer  header "MethodPoolB.h"
144*a171d248SMichael Spencer
145*a171d248SMichael Spencer  explicit module Sub2 {
146*a171d248SMichael Spencer    header "MethodPoolBSub2.h"
147*a171d248SMichael Spencer  }
148*a171d248SMichael Spencer
149*a171d248SMichael Spencer  explicit module Sub {
150*a171d248SMichael Spencer    header "MethodPoolBSub.h"
151*a171d248SMichael Spencer  }
152*a171d248SMichael Spencer}
153*a171d248SMichael Spencermodule import_decl {
154*a171d248SMichael Spencer  header "import-decl.h"
155*a171d248SMichael Spencer}
156*a171d248SMichael Spencer
157*a171d248SMichael Spencerframework module * {
158*a171d248SMichael Spencer  exclude NotAModule
159*a171d248SMichael Spencer}
160*a171d248SMichael Spencer
161*a171d248SMichael Spencermodule linkage_merge_left {
162*a171d248SMichael Spencer  explicit module sub {
163*a171d248SMichael Spencer    header "linkage-merge-sub.h"
164*a171d248SMichael Spencer  }
165*a171d248SMichael Spencer}
166*a171d248SMichael Spencer
167*a171d248SMichael Spencermodule autolink {
168*a171d248SMichael Spencer  header "autolink.h"
169*a171d248SMichael Spencer  link "autolink"
170*a171d248SMichael Spencer
171*a171d248SMichael Spencer  explicit module sub {
172*a171d248SMichael Spencer    header "autolink-sub.h"
173*a171d248SMichael Spencer    link "autolink_sub"
174*a171d248SMichael Spencer  }
175*a171d248SMichael Spencer
176*a171d248SMichael Spencer  explicit module sub2 {
177*a171d248SMichael Spencer    header "autolink-sub2.h"
178*a171d248SMichael Spencer    link framework "autolink_framework"
179*a171d248SMichael Spencer  }
180*a171d248SMichael Spencer
181*a171d248SMichael Spencer  explicit module sub3 {
182*a171d248SMichael Spencer    header "autolink-sub3.h"
183*a171d248SMichael Spencer    link "autolink_from_pch"
184*a171d248SMichael Spencer  }
185*a171d248SMichael Spencer}
186*a171d248SMichael Spencer
187*a171d248SMichael Spencermodule weird_objc {
188*a171d248SMichael Spencer  header "weird_objc.h"
189*a171d248SMichael Spencer}
190*a171d248SMichael Spencer
191*a171d248SMichael Spencermodule ignored_macros {
192*a171d248SMichael Spencer  header "ignored_macros.h"
193*a171d248SMichael Spencer}
194*a171d248SMichael Spencer
195*a171d248SMichael Spencermodule cxx_many_overloads {
196*a171d248SMichael Spencer  header "cxx-many-overloads.h"
197*a171d248SMichael Spencer}
198*a171d248SMichael Spencer
199*a171d248SMichael Spencermodule cxx_inline_namespace {
200*a171d248SMichael Spencer  header "cxx-inline-namespace.h"
201*a171d248SMichael Spencer}
202*a171d248SMichael Spencer
203*a171d248SMichael Spencermodule cxx_inline_namespace_b {
204*a171d248SMichael Spencer  header "cxx-inline-namespace-b.h"
205*a171d248SMichael Spencer}
206*a171d248SMichael Spencer
207*a171d248SMichael Spencermodule cxx_linkage_cache {
208*a171d248SMichael Spencer  header "cxx-linkage-cache.h"
209*a171d248SMichael Spencer}
210*a171d248SMichael Spencer
211*a171d248SMichael Spencermodule cxx_templates_common {
212*a171d248SMichael Spencer  header "cxx-templates-common.h"
213*a171d248SMichael Spencer}
214*a171d248SMichael Spencer
215*a171d248SMichael Spencermodule cxx_templates_a {
216*a171d248SMichael Spencer  header "cxx-templates-a.h"
217*a171d248SMichael Spencer}
218*a171d248SMichael Spencer
219*a171d248SMichael Spencermodule cxx_templates_b_impl {
220*a171d248SMichael Spencer  header "cxx-templates-b-impl.h"
221*a171d248SMichael Spencer}
222*a171d248SMichael Spencer
223*a171d248SMichael Spencermodule cxx_templates_b {
224*a171d248SMichael Spencer  header "cxx-templates-b.h"
225*a171d248SMichael Spencer}
226*a171d248SMichael Spencer
227*a171d248SMichael Spencermodule cxx_templates_c {
228*a171d248SMichael Spencer  header "cxx-templates-c.h"
229*a171d248SMichael Spencer}
230*a171d248SMichael Spencer
231*a171d248SMichael Spencermodule cxx_decls {
232*a171d248SMichael Spencer  module unimported {
233*a171d248SMichael Spencer    header "cxx-decls-unimported.h"
234*a171d248SMichael Spencer  }
235*a171d248SMichael Spencer  module imported {
236*a171d248SMichael Spencer    header "cxx-decls-imported.h"
237*a171d248SMichael Spencer  }
238*a171d248SMichael Spencer}
239*a171d248SMichael Spencer
240*a171d248SMichael Spencermodule config {
241*a171d248SMichael Spencer  header "config.h"
242*a171d248SMichael Spencer  config_macros [exhaustive] WANT_FOO, WANT_BAR
243*a171d248SMichael Spencer}
244*a171d248SMichael Spencer
245*a171d248SMichael Spencermodule diag_pragma {
246*a171d248SMichael Spencer  header "diag_pragma.h"
247*a171d248SMichael Spencer}
248*a171d248SMichael Spencer
249*a171d248SMichael Spencermodule dummy {
250*a171d248SMichael Spencer  header "dummy.h"
251*a171d248SMichael Spencer}
252*a171d248SMichael Spencer
253*a171d248SMichael Spencermodule builtin {
254*a171d248SMichael Spencer  header "builtin.h"
255*a171d248SMichael Spencer  explicit module sub {
256*a171d248SMichael Spencer    header "builtin_sub.h"
257*a171d248SMichael Spencer  }
258*a171d248SMichael Spencer}
259*a171d248SMichael Spencer
260*a171d248SMichael Spencermodule linkage_merge {
261*a171d248SMichael Spencer  explicit module foo {
262*a171d248SMichael Spencer    header "linkage-merge-foo.h"
263*a171d248SMichael Spencer  }
264*a171d248SMichael Spencer  explicit module bar {
265*a171d248SMichael Spencer    header "linkage-merge-bar.h"
266*a171d248SMichael Spencer  }
267*a171d248SMichael Spencer
268*a171d248SMichael Spencer}
269*a171d248SMichael Spencer
270*a171d248SMichael Spencermodule incomplete_mod {
271*a171d248SMichael Spencer  header "incomplete_mod.h"
272*a171d248SMichael Spencer}
273*a171d248SMichael Spencer
274*a171d248SMichael Spencermodule warning {
275*a171d248SMichael Spencer  header "warning.h"
276*a171d248SMichael Spencer}
277*a171d248SMichael Spencer
278*a171d248SMichael Spencermodule initializer_list {
279*a171d248SMichael Spencer  header "initializer_list"
280*a171d248SMichael Spencer}
281*a171d248SMichael Spencer
282*a171d248SMichael Spencermodule using_decl {
283*a171d248SMichael Spencer  module a { header "using-decl-a.h" export * }
284*a171d248SMichael Spencer  module b { header "using-decl-b.h" export * }
285*a171d248SMichael Spencer}
286*a171d248SMichael Spencer
287*a171d248SMichael Spencermodule recursive_visibility_a1 {
288*a171d248SMichael Spencer  module inner { header "recursive_visibility_a1_inner.h" }
289*a171d248SMichael Spencer}
290*a171d248SMichael Spencermodule recursive_visibility_a2 {
291*a171d248SMichael Spencer  module inner {
292*a171d248SMichael Spencer    module more_inner {
293*a171d248SMichael Spencer      header "recursive_visibility_a2_more_inner.h"
294*a171d248SMichael Spencer    }
295*a171d248SMichael Spencer  }
296*a171d248SMichael Spencer}
297*a171d248SMichael Spencermodule recursive_visibility_b {
298*a171d248SMichael Spencer  header "recursive_visibility_b.h"
299*a171d248SMichael Spencer  export *
300*a171d248SMichael Spencer}
301*a171d248SMichael Spencermodule recursive_visibility_c {
302*a171d248SMichael Spencer  header "recursive_visibility_c.h"
303*a171d248SMichael Spencer}
304*a171d248SMichael Spencermodule recursive1 {
305*a171d248SMichael Spencer  header "recursive1.h"
306*a171d248SMichael Spencer}
307*a171d248SMichael Spencermodule recursive2 {
308*a171d248SMichael Spencer  header "recursive2.h"
309*a171d248SMichael Spencer}
310