1*642c6638SVolodymyr Sapsai // Test scanning deps does not have more errors than the regular compilation. 2*642c6638SVolodymyr Sapsai 3*642c6638SVolodymyr Sapsai // RUN: rm -rf %t 4*642c6638SVolodymyr Sapsai // RUN: split-file %s %t 5*642c6638SVolodymyr Sapsai // RUN: sed "s|DIR|%/t|g" %t/cdb.json.template > %t/cdb.json 6*642c6638SVolodymyr Sapsai 7*642c6638SVolodymyr Sapsai // Check the regular compilation does not fail. 8*642c6638SVolodymyr Sapsai // RUN: %clang -fsyntax-only %t/test.c -I %t/include -fmodules -fimplicit-module-maps -fmodules-cache-path=%t/cache -Wnon-modular-include-in-module -Werror=non-modular-include-in-module 9*642c6638SVolodymyr Sapsai 10*642c6638SVolodymyr Sapsai // And now scanning deps should succeed too. 11*642c6638SVolodymyr Sapsai // RUN: clang-scan-deps -compilation-database %t/cdb.json -j 1 12*642c6638SVolodymyr Sapsai 13*642c6638SVolodymyr Sapsai //--- cdb.json.template 14*642c6638SVolodymyr Sapsai [ 15*642c6638SVolodymyr Sapsai { 16*642c6638SVolodymyr Sapsai "directory": "DIR", 17*642c6638SVolodymyr Sapsai "command": "clang -fsyntax-only DIR/test.c -I DIR/include -fmodules -fimplicit-module-maps -fmodules-cache-path=DIR/cache -Wnon-modular-include-in-module -Werror=non-modular-include-in-module", 18*642c6638SVolodymyr Sapsai "file": "DIR/test.c" 19*642c6638SVolodymyr Sapsai }, 20*642c6638SVolodymyr Sapsai ] 21*642c6638SVolodymyr Sapsai 22*642c6638SVolodymyr Sapsai //--- include/nonmodular.h 23*642c6638SVolodymyr Sapsai // empty 24*642c6638SVolodymyr Sapsai 25*642c6638SVolodymyr Sapsai //--- include/modular-includer.h 26*642c6638SVolodymyr Sapsai #pragma clang diagnostic push 27*642c6638SVolodymyr Sapsai #pragma clang diagnostic ignored "-Wnon-modular-include-in-module" 28*642c6638SVolodymyr Sapsai #include <nonmodular.h> 29*642c6638SVolodymyr Sapsai #pragma clang diagnostic pop 30*642c6638SVolodymyr Sapsai 31*642c6638SVolodymyr Sapsai //--- include/module.modulemap 32*642c6638SVolodymyr Sapsai module ModularIncluder { header "modular-includer.h" } 33*642c6638SVolodymyr Sapsai 34*642c6638SVolodymyr Sapsai //--- test.c 35*642c6638SVolodymyr Sapsai #include <modular-includer.h> 36