aboutsummaryrefslogtreecommitdiff
path: root/test/Preprocessor/macro_fn_comma_swallow.c
blob: d4f3bb9940dd8d3d12bc1ad652dccfae199f1a7a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// Test the GNU comma swallowing extension.
// RUN: clang %s -E | grep 'foo{A, }' && 
// RUN: clang %s -E | grep 'fo2{A,}' && 
// RUN: clang %s -E | grep '{foo}'

#define X(Y) foo{A, Y}
X()

#define X2(Y) fo2{A,##Y}
X2()

// should eat the comma.
#define X3(b, ...) {b, ## __VA_ARGS__}
X3(foo)