]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/Modules/Inputs/module.map
Vendor import of clang trunk r338150:
[FreeBSD/FreeBSD.git] / test / Modules / Inputs / module.map
1 module c_library [extern_c] { module inner { header "c-header.h" } }
2 module cxx_library { header "cxx-header.h" requires cplusplus }
3 module c_library_bad [extern_c] { header "c-header-bad.h" }
4 module diamond_top { header "diamond_top.h" }
5 module diamond_left { 
6   header "diamond_left.h" 
7   export diamond_top
8 }
9 module diamond_right { 
10   header "diamond_right.h" 
11   export diamond_top
12 }
13 module diamond_bottom { 
14   header "diamond_bottom.h" 
15   export *
16 }
17 module irgen { header "irgen.h" }
18 module cxx_irgen_top { header "cxx-irgen-top.h" }
19 module cxx_irgen_left { header "cxx-irgen-left.h" }
20 module cxx_irgen_right { header "cxx-irgen-right.h" }
21 module lookup_left_objc { header "lookup_left.h" }
22 module lookup_right_objc { header "lookup_right.h" }
23 module lookup_left_cxx { header "lookup_left.hpp" }
24 module lookup_right_cxx { header "lookup_right.hpp" }
25 module module_private_left { header "module_private_left.h" }
26 module module_private_right { header "module_private_right.h" }
27 module macros_top { 
28   header "macros_top.h" 
29   explicit module b { header "macros_top_b.h" }
30   explicit module c { header "macros_top_c.h" }
31 }
32 module macros_left { 
33   header "macros_left.h" 
34   export *
35 }
36 module macros_right { 
37   header "macros_right.h" 
38   export *
39   explicit module undef {
40     header "macros_right_undef.h"
41   }
42 }
43 module macros_bottom { 
44   header "macros_bottom.h" 
45   export *
46 }
47 module macros { header "macros.h" }
48 module macros_other { header "macros_other.h" }
49 module category_top { header "category_top.h" }
50 module category_left { 
51   header "category_left.h" 
52   export category_top
53
54   explicit module sub {
55     header "category_left_sub.h"
56   }
57 }
58 module category_right { 
59   header "category_right.h" 
60   export category_top
61
62   explicit module sub {
63     header "category_right_sub.h"
64   }
65 }
66 module category_bottom { 
67   header "category_bottom.h" 
68   export category_left
69   export category_right
70 }
71 module category_other { header "category_other.h" }
72 module redeclarations_left { header "redeclarations_left.h" }
73 module redeclarations_right { header "redeclarations_right.h" }
74 module redecl_namespaces_left { header "redecl_namespaces_left.h" }
75 module redecl_namespaces_right { header "redecl_namespaces_right.h" }
76 module redecl_add_after_load_top { header "redecl-add-after-load-top.h" }
77 module redecl_add_after_load_decls { header "redecl-add-after-load-decls.h" }
78 module redecl_add_after_load { header "redecl-add-after-load.h" }
79 module load_failure { header "load_failure.h" }
80
81 module decldef {
82   explicit module Decl { header "decl.h" }
83   explicit module Decl2 { header "decl2.h" }
84   explicit module Def { header "def.h" }
85 }
86
87 module redecl_merge_top { 
88   header "redecl-merge-top.h"
89   explicit module Explicit { header "redecl-merge-top-explicit.h" }
90   exclude header "nonexistent.h"
91 }
92 module redecl_merge_left { 
93   header "redecl-merge-left.h" 
94   export *
95 }
96 module redecl_merge_left_left { 
97   header "redecl-merge-left-left.h" 
98   export *
99 }
100 module redecl_merge_right { 
101   header "redecl-merge-right.h" 
102   export *
103 }
104 module redecl_merge_bottom { 
105   explicit module prefix {
106     header "redecl-merge-bottom-prefix.h"
107   }
108
109   header "redecl-merge-bottom.h" 
110   export *
111 }
112 module namespaces_top { 
113   header "namespaces-top.h"
114   export *
115 }
116 module namespaces_left { 
117   header "namespaces-left.h"
118   export *
119 }
120 module namespaces_right { 
121   header "namespaces-right.h"
122   export *
123 }
124 module templates_top { 
125   header "templates-top.h"
126   export *
127 }
128 module templates_left { 
129   header "templates-left.h"
130   export *
131 }
132 module templates_right { 
133   header "templates-right.h"
134   export *
135 }
136 module MethodPoolA {
137   header "MethodPoolA.h"
138
139   explicit module Sub2 {
140     header "MethodPoolASub2.h"
141   }
142
143   explicit module Sub {
144     header "MethodPoolASub.h"
145   }
146 }
147 module MethodPoolB {
148   header "MethodPoolB.h"
149
150   explicit module Sub2 {
151     header "MethodPoolBSub2.h"
152   }
153
154   explicit module Sub {
155     header "MethodPoolBSub.h"
156   }
157 }
158 module import_decl {
159   header "import-decl.h"
160 }
161
162 framework module * { 
163   exclude NotAModule
164 }
165
166 module linkage_merge_left {
167   explicit module sub {
168     header "linkage-merge-sub.h"
169   }
170 }
171
172 module autolink {
173   header "autolink.h"
174   link "autolink"
175
176   explicit module sub {
177     header "autolink-sub.h"
178     link "autolink_sub"
179   }
180
181   explicit module sub2 {
182     header "autolink-sub2.h"
183     link framework "autolink_framework"
184   }
185
186   explicit module sub3 {
187     header "autolink-sub3.h"
188     link "autolink_from_pch"
189   }
190 }
191
192 module weird_objc {
193   header "weird_objc.h"
194 }
195
196 module ignored_macros {
197   header "ignored_macros.h"
198 }
199
200 module cxx_many_overloads {
201   header "cxx-many-overloads.h"
202 }
203
204 module cxx_inline_namespace {
205   header "cxx-inline-namespace.h"
206 }
207
208 module cxx_inline_namespace_b {
209   header "cxx-inline-namespace-b.h"
210 }
211
212 module cxx_linkage_cache {
213   header "cxx-linkage-cache.h"
214 }
215
216 module cxx_templates_common {
217   header "cxx-templates-common.h"
218
219   explicit module unimported { header "cxx-templates-unimported.h" }
220 }
221
222 module cxx_templates_a {
223   header "cxx-templates-a.h"
224 }
225
226 module cxx_templates_b_impl {
227   header "cxx-templates-b-impl.h"
228 }
229
230 module cxx_templates_b {
231   header "cxx-templates-b.h"
232 }
233
234 module cxx_templates_c {
235   header "cxx-templates-c.h"
236 }
237
238 module cxx_templates_d {
239   header "cxx-templates-d.h"
240 }
241
242 module cxx_decls {
243   module unimported {
244     header "cxx-decls-unimported.h"
245   }
246   module imported {
247     header "cxx-decls-imported.h"
248   }
249 }
250
251 module cxx_decls_premerged {
252   header "cxx-decls-premerged.h"
253 }
254
255 module cxx_decls_merged {
256   header "cxx-decls-merged.h"
257 }
258
259 module config {
260   header "config.h"
261   config_macros [exhaustive] WANT_FOO, WANT_BAR
262 }
263
264 module diag_flags {
265   header "diag_flags.h"
266 }
267
268 module diag_pragma {
269   header "diag_pragma.h"
270 }
271
272 module pragma_pack {
273   module set { header "pragma_pack_set.h" }
274   module empty { header "empty.h" }
275 }
276
277 module dummy {
278   header "dummy.h"
279 }
280
281 module builtin {
282   header "builtin.h"
283   explicit module sub {
284     header "builtin_sub.h"
285   }
286 }
287
288 module linkage_merge {
289   explicit module foo {
290     header "linkage-merge-foo.h"
291   }
292   explicit module bar {
293     header "linkage-merge-bar.h"
294   }
295
296 }
297
298 module incomplete_mod {
299   header "incomplete_mod.h"
300 }
301
302 module warning {
303   header "warning.h"
304 }
305
306 module warn_unused_local_typedef {
307   header "warn-unused-local-typedef.h"
308 }
309
310 module using_decl {
311   module a { header "using-decl-a.h" export * }
312   module b { header "using-decl-b.h" export * }
313 }
314
315 module recursive_visibility_a1 {
316   module inner { header "recursive_visibility_a1_inner.h" }
317 }
318 module recursive_visibility_a2 {
319   module inner {
320     module more_inner {
321       header "recursive_visibility_a2_more_inner.h"
322     }
323   }
324 }
325 module recursive_visibility_b {
326   header "recursive_visibility_b.h"
327   export *
328 }
329 module recursive_visibility_c {
330   header "recursive_visibility_c.h"
331 }
332 module recursive1 {
333   header "recursive1.h"
334 }
335 module recursive2 {
336   header "recursive2.h"
337 }
338 module crash {
339   header "crash.h"
340 }
341
342 module DebugCXX {
343   header "DebugCXX.h"
344 }
345
346 module DebugObjC {
347   header "DebugObjC.h"
348 }
349
350 module DebugObjCImport {
351   module SubModule {
352     header "DebugObjCImport.h"
353   }
354 }
355
356 module ImportNameInDir {
357   header "ImportNameInDir.h"
358   export *
359 }
360
361 module RequiresWithMissingHeader {
362   module HeaderBefore {
363     header "RequiresWithMissingHeader-Missing1.h"
364     requires missing
365   }
366   module HeaderAfter {
367     requires missing
368     header "RequiresWithMissingHeader-Missing2.h"
369   }
370 }
371
372 module TargetFeatures {
373   module arm {
374     requires arm
375     module aarch32 { requires aarch32 }
376     module aarch64 { requires aarch64 }
377   }
378   module x86 {
379     requires x86
380     module x86_32 { requires x86_32 }
381     module x86_64 { requires x86_64 }
382   }
383   module riscv {
384     requires riscv
385     module riscv32 { requires riscv32 }
386     module riscv64 { requires riscv64 }
387   }
388 }
389
390 module DebugSubmodules {
391   module DebugSubmoduleA {
392     header "DebugSubmoduleA.h"
393     export *
394   }
395   module DebugSubmoduleB {
396     header "DebugSubmoduleB.h"
397     export *
398   }
399 }
400
401 module ExtensionTestA {
402   header "ExtensionTestA.h"
403 }
404
405 module TypedefTag {
406   header "typedef-tag.h"
407   explicit module Hidden {
408     header "typedef-tag-hidden.h"
409   }
410 }
411
412 module ElaboratedTypeStructs {
413   module Empty {}
414   module Structs {
415     header "elaborated-type-structs.h"
416   }
417 }
418
419 // We import a module, then declare a method with selector stringValue in
420 // MethodPoolCombined1.h. In MethodPoolCombined2.h, we import another module
421 // that also contains a method for selector stringValue. We make sure that
422 // the method pool entry for stringValue in this module is complete.
423 module MethodPoolCombined {
424   header "MethodPoolCombined1.h"
425   header "MethodPoolCombined2.h"
426 }
427
428 module MethodPoolString1 {
429   header "MethodPoolString1.h"
430 }
431
432 module MethodPoolString2 {
433   header "MethodPoolString2.h"
434 }
435
436 module Empty {}
437
438 module MacroFabs1 {
439   header "MacroFabs1.h"
440 }
441
442 module DiagOutOfDate {
443   header "DiagOutOfDate.h"
444 }
445
446 module DebugNestedA {
447   header "DebugNestedA.h"
448   export *
449 }
450
451 module DebugNestedB {
452   header "DebugNestedB.h"
453   export *
454 }
455
456 module objcAtKeywordMissingEnd {
457   header "objcAtKeywordMissingEnd.h"
458 }
459
460 module innerstructredef {
461   module one {
462     header "empty.h"
463   }
464   module two {
465    header "innerstructredef.h"
466   }
467 }
468
469 module template_nontrivial0 {
470   header "template-nontrivial0.h"
471   export *
472 }
473
474 module template_nontrivial1 {
475   header "template-nontrivial1.h"
476   export *
477 }