diff options
Diffstat (limited to 'clang/test/Preprocessor/macro_fn_disable_expand.c')
-rw-r--r-- | clang/test/Preprocessor/macro_fn_disable_expand.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/clang/test/Preprocessor/macro_fn_disable_expand.c b/clang/test/Preprocessor/macro_fn_disable_expand.c new file mode 100644 index 0000000..16948dc --- /dev/null +++ b/clang/test/Preprocessor/macro_fn_disable_expand.c @@ -0,0 +1,30 @@ +// RUN: %clang_cc1 %s -E | FileCheck %s + +#define foo(x) bar x +foo(foo) (2) +// CHECK: bar foo (2) + +#define m(a) a(w) +#define w ABCD +m(m) +// CHECK: m(ABCD) + + + +// rdar://7466570 PR4438, PR5163 + +// We should get '42' in the argument list for gcc compatibility. +#define A 1 +#define B 2 +#define C(x) (x + 1) + +X: C( +#ifdef A +#if A == 1 +#if B + 42 +#endif +#endif +#endif + ) +// CHECK: X: (42 + 1) |