[clang] Implement lifetime analysis for lifetime_capture_by(X) (#115921)
[llvm-project.git] / clang / test / Modules / builtin-headers.mm
blob4c9ddec4e99c289eb6c3c037bf5566bb36320f89
1 // RUN: rm -rf %t
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
3 // RUN: rm -rf %t
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
8 @import cpp_stdint;
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;
26 #ifdef SYSTEM_MODULES
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.
30 @import cstd;
31 #else
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.
35 @import c_complex;
36 @import c_float;
37 @import c_inttypes;
38 @import c_limits;
39 @import c_math;
40 @import c_stdint;
41 #endif