xref: /llvm-project/clang/test/Modules/Werror-Wsystem-headers.m (revision 0ea3d88bdb16aa6e9a0043cc3ed93dcb88a89dea)
1// RUN: rm -rf %t
2// RUN: rm -rf %t-saved
3// RUN: mkdir %t-saved
4
5// Initial module build
6// RUN: %clang_cc1 -fmodules -fimplicit-module-maps -fbuiltin-headers-in-system-modules \
7// RUN:     -fmodules-cache-path=%t -fdisable-module-hash -isystem %S/Inputs/System/usr/include \
8// RUN:     -fsyntax-only %s -verify
9// RUN: cp %t/cstd.pcm %t-saved/cstd.pcm
10
11// Even with -Werror don't rebuild a system module
12// RUN: %clang_cc1 -fmodules -fimplicit-module-maps -fbuiltin-headers-in-system-modules \
13// RUN:     -fmodules-cache-path=%t -fdisable-module-hash -isystem %S/Inputs/System/usr/include \
14// RUN:     -fsyntax-only %s -verify -Werror
15// RUN: diff %t/cstd.pcm %t-saved/cstd.pcm
16
17// Unless -Wsystem-headers is on
18// RUN: %clang_cc1 -fmodules -fimplicit-module-maps -fbuiltin-headers-in-system-modules \
19// RUN:     -fmodules-cache-path=%t -fdisable-module-hash -isystem %S/Inputs/System/usr/include \
20// RUN:     -fsyntax-only %s -verify -Werror=unused -Wsystem-headers
21// RUN: not diff %t/cstd.pcm %t-saved/cstd.pcm
22
23// expected-no-diagnostics
24@import cstd;
25