2 // RUN: %clang_cc1 -cxx-isystem %S/Inputs/builtin-headers/c++ -internal-isystem %S/Inputs/builtin-headers -fsyntax-only -fmodules -fmodules-cache-path=%t -fmodule-map-file=%S/Inputs/builtin-headers/c++/module.modulemap -fmodule-map-file=%resource_dir/module.modulemap -fmodule-map-file=%S/Inputs/builtin-headers/system-modules.modulemap -fbuiltin-headers-in-system-modules -DSYSTEM_MODULES %s -verify
4 // RUN: %clang_cc1 -cxx-isystem %S/Inputs/builtin-headers/c++ -internal-isystem %S/Inputs/builtin-headers -fsyntax-only -fmodules -fmodules-cache-path=%t -fmodule-map-file=%S/Inputs/builtin-headers/c++/module.modulemap -fmodule-map-file=%resource_dir/module.modulemap -fmodule-map-file=%S/Inputs/builtin-headers/builtin-modules.modulemap %s -verify
6 // expected-no-diagnostics
10 // The builtin modules are always available, though they're mostly
11 // empty if -fbuiltin-headers-in-system-modules is used.
12 @import _Builtin_float;
13 @import _Builtin_inttypes;
14 @import _Builtin_iso646;
15 @import _Builtin_limits;
16 @import _Builtin_stdalign;
17 @import _Builtin_stdarg;
18 @import _Builtin_stdatomic;
19 @import _Builtin_stdbool;
20 @import _Builtin_stddef;
21 @import _Builtin_stdint;
22 @import _Builtin_stdnoreturn;
23 @import _Builtin_tgmath;
24 @import _Builtin_unwind;
27 // system-modules.modulemap uses the "mega module" style with
28 // -fbuiltin-headers-in-system-modules, and its modules cover
29 // the clang builtin headers.
32 // builtin-modules.modulemap uses top level modules for each
33 // of its headers, which allows interleaving with the builtin
34 // modules and libc++ modules.