/* { dg-do preprocess } */ /* Test source Robert Lipe, with minor modifications for the testsuite by Neil Booth. 29 Oct 2000. */ #define _VA_ARGS_0() 42 #define _L_0() ( #define _R_0() ) #define __VA_ARGLIST(argc,list) \ _VA_ARGS_##argc list #define _CAT_LIST(argc,list1,list2) \ _L_##argc list1 _R_##argc list2 #define _VA_ARGLIST(argc,list1,list2) \ __VA_ARGLIST(argc, \ _CAT_LIST(argc, list1, list2)) #define BLAH(a) _VA_ARGLIST(a, (), ()) #if BLAH (0) != 42 #error Simulated varargs macros #endif