xref: /llvm-project/clang/test/Preprocessor/macro_expand.c (revision 0f1c1be1968076d6f96f8a7bcc4a15cf195ecd97)
1 // RUN: %clang_cc1 -E %s | FileCheck --strict-whitespace %s
2 
3 #define X() Y
4 #define Y() X
5 
6 A: X()()()
7 // CHECK: {{^}}A: Y{{$}}
8 
9 // PR3927
10 #define f(x) h(x
11 #define for(x) h(x
12 #define h(x) x()
13 B: f(f))
14 C: for(for))
15 
16 // CHECK: {{^}}B: f(){{$}}
17 // CHECK: {{^}}C: for(){{$}}
18 
19 #define f(x,y...) y
20 f()
21 
22 // CHECK: #pragma omp parallel for
23 #define FOO parallel
24 #define Streaming _Pragma("omp FOO for")
25 Streaming
26 
27