1 // RUN: %clang_cc1 %s -E | FileCheck %s 2 3 #define foo(x) bar x 4 foo(foo) (2) 5 // CHECK: bar foo (2) 6 7 #define m(a) a(w) 8 #define w ABCD 9 m(m) 10 // CHECK: m(ABCD) 11 12 13 14 // rdar://7466570 PR4438, PR5163 15 16 // We should get '42' in the argument list for gcc compatibility. 17 #define A 1 18 #define B 2 19 #define C(x) (x + 1) 20 21 X: C( 22 #ifdef A 23 #if A == 1 24 #if B 25 42 26 #endif 27 #endif 28 #endif 29 ) 30 // CHECK: X: (42 + 1) 31