Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / clang / test / ClangScanDeps / modulemap-via-vfs.m
blobe2db23cd9e861a8112ae4aa8024e05818a77df3d
1 // RUN: rm -rf %t.dir
2 // RUN: split-file %s %t.dir
3 // RUN: sed -e "s|DIR|%/t.dir|g" %t.dir/build/compile-commands.json.in > %t.dir/build/compile-commands.json
4 // RUN: sed -e "s|DIR|%/t.dir|g" %t.dir/build/vfs.yaml.in > %t.dir/build/vfs.yaml
5 // RUN: clang-scan-deps -compilation-database %t.dir/build/compile-commands.json \
6 // RUN:   -j 1 -format experimental-full -mode preprocess-dependency-directives > %t.db
7 // RUN: %deps-to-rsp %t.db --module-name=A > %t.A.cc1.rsp
8 // RUN: cat %t.A.cc1.rsp | sed 's:\\\\\?:/:g' | FileCheck %s
10 // CHECK-NOT: build/module.modulemap
11 // CHECK: A/module.modulemap
12 // CHECK-NOT: build/module.modulemap
14 //--- build/compile-commands.json.in
18   "directory": "DIR",
19   "command": "clang DIR/main.m -Imodules/A -fmodules -fmodules-cache-path=DIR/module-cache -fimplicit-modules -fimplicit-module-maps -ivfsoverlay build/vfs.yaml",
20   "file": "DIR/main.m"
23   "directory": "DIR",
24   "command": "clang DIR/main.m -Imodules/A -fmodules -Xclang -fno-modules-share-filemanager -fmodules-cache-path=DIR/module-cache-unshared -fimplicit-modules -fimplicit-module-maps -ivfsoverlay build/vfs.yaml",
25   "file": "DIR/main.m"
29 //--- build/module.modulemap
31 module A {
32   umbrella header "A.h"
35 //--- modules/A/A.h
37 typedef int A_t;
39 //--- build/vfs.yaml.in
42   "version": 0,
43   "case-sensitive": "false",
44   "use-external-names": true,
45   "roots": [
46   {
47      "contents": [
48      {
49         "external-contents": "DIR/build/module.modulemap",
50         "name": "module.modulemap",
51         "type": "file"
52      }],
53      "name": "DIR/modules/A",
54      "type": "directory"
55   }
56   ]
59 //--- main.m
61 @import A;
63 A_t a = 0;