OSDN Git Service

2007-07-06 Josh Conner <jconner@apple.com>
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / cpp / macro5.c
1 /* { dg-do preprocess } */
2
3 /* Test source Robert Lipe, with minor modifications for the testsuite
4    by Neil Booth.  29 Oct 2000.  */
5
6 #define _VA_ARGS_0() 42
7 #define _L_0()                      (
8 #define _R_0()                      )
9
10 #define __VA_ARGLIST(argc,list) \
11                 _VA_ARGS_##argc list
12
13 #define _CAT_LIST(argc,list1,list2) \
14                 _L_##argc list1 _R_##argc list2
15
16 #define _VA_ARGLIST(argc,list1,list2) \
17                 __VA_ARGLIST(argc, \
18                         _CAT_LIST(argc, list1, list2))
19
20 #define BLAH(a) _VA_ARGLIST(a, (), ())
21
22 #if BLAH (0) != 42
23 #error Simulated varargs macros
24 #endif