1 // RUN: %clang_cc1 -std=c++2a -emit-pch %s -o %t
2 // RUN: %clang_cc1 -std=c++2a -include-pch %t -verify %s
3
4 // RUN: %clang_cc1 -std=c++2a -emit-pch -fpch-instantiate-templates %s -o %t
5 // RUN: %clang_cc1 -std=c++2a -include-pch %t -verify %s
6
7 // expected-no-diagnostics
8
9 #ifndef HEADER
10 #define HEADER
11
12 template<typename... T>
13 concept C = true;
14
15 namespace n {
16 template<typename... T>
17 concept C = true;
18 }
19
f()20 void f() {
21 (void)C<int>;
22 (void)C<int, void>;
23 (void)n::C<void>;
24 }
25
26 #else /*included pch*/
27
main()28 int main() {
29 (void)C<int>;
30 (void)C<int, void>;
31 (void)n::C<void>;
32 f();
33 }
34
35 #endif // HEADER
36