1 #define M_RETI_ARG27(x,y,z,aa, ...) aa
2 #define M_RET_ARG27(...) M_RETI_ARG27(__VA_ARGS__)
3 #define M_COMMA_P(...) M_RET_ARG27(__VA_ARGS__, 1, 1, 0, useless)
4 #define M_EMPTYI_DETECT(...) 0, 1,
5 #define M_EMPTYI_P_C1(...) M_COMMA_P(M_EMPTYI_DETECT __VA_ARGS__ () )
8 #define fnlike(x) yeah x
9 /* If the following macro is called with empty arg (X183), the use
10 of 'x' between fnlike and '(' doesn't hinder the recognition of this
11 being a further fnlike macro invocation. */
12 #define usefnlike(x) fnlike x (x)
17 #define ABC(x) ABC : x
18 #define A(a,b,c) a ## b ## c
19 #define B(a,b,c) A(a,b,c)
20 #define C(a,b,c) a b c
27 #define TEST(x) TEST : x
29 #define L(a,b) K( TE a , b ST )