xref: /minix3/external/bsd/llvm/dist/clang/test/PCH/chain-macro-override.c (revision f4a2713ac843a11c696ec80c0a5e3e5d80b4d338)
1*f4a2713aSLionel Sambuc // Test this without pch.
2*f4a2713aSLionel Sambuc // RUN: %clang_cc1 -include %S/Inputs/chain-macro-override1.h -include %S/Inputs/chain-macro-override2.h -fsyntax-only -verify -detailed-preprocessing-record %s
3*f4a2713aSLionel Sambuc 
4*f4a2713aSLionel Sambuc // Test with pch.
5*f4a2713aSLionel Sambuc // RUN: %clang_cc1 -emit-pch -o %t1 %S/Inputs/chain-macro-override1.h -detailed-preprocessing-record
6*f4a2713aSLionel Sambuc // RUN: %clang_cc1 -emit-pch -o %t2 %S/Inputs/chain-macro-override2.h -include-pch %t1 -detailed-preprocessing-record
7*f4a2713aSLionel Sambuc // RUN: %clang_cc1 -include-pch %t2 -fsyntax-only -verify %s
8*f4a2713aSLionel Sambuc 
foo()9*f4a2713aSLionel Sambuc int foo() {
10*f4a2713aSLionel Sambuc   f();
11*f4a2713aSLionel Sambuc   g();
12*f4a2713aSLionel Sambuc   h();
13*f4a2713aSLionel Sambuc   h2(); // expected-warning{{implicit declaration of function 'h2' is invalid in C99}}
14*f4a2713aSLionel Sambuc   h3();
15*f4a2713aSLionel Sambuc   return x;
16*f4a2713aSLionel Sambuc }
17