1*67e74705SXin Li // RUN: %clang_cc1 -E %s | FileCheck --strict-whitespace %s 2*67e74705SXin Li 3*67e74705SXin Li #define X() Y 4*67e74705SXin Li #define Y() X 5*67e74705SXin Li 6*67e74705SXin Li A: X()()() 7*67e74705SXin Li // CHECK: {{^}}A: Y{{$}} 8*67e74705SXin Li 9*67e74705SXin Li // PR3927 10*67e74705SXin Li #define f(x) h(x 11*67e74705SXin Li #define for(x) h(x 12*67e74705SXin Li #define h(x) x() 13*67e74705SXin Li B: f(f)) 14*67e74705SXin Li C: for(for)) 15*67e74705SXin Li 16*67e74705SXin Li // CHECK: {{^}}B: f(){{$}} 17*67e74705SXin Li // CHECK: {{^}}C: for(){{$}} 18*67e74705SXin Li 19*67e74705SXin Li // rdar://6880648 20*67e74705SXin Li #define f(x,y...) y 21*67e74705SXin Li f() 22*67e74705SXin Li 23*67e74705SXin Li // CHECK: #pragma omp parallel for 24*67e74705SXin Li #define FOO parallel 25*67e74705SXin Li #define Streaming _Pragma("omp FOO for") 26*67e74705SXin Li Streaming 27*67e74705SXin Li 28