27 lines · 581 B · C
RawDownload
X1 __COUNTER__X2 __COUNTER__#if __COUNTER__X3 __COUNTER__#endif#define pass(x) x#define a x __COUNTER__ y#define a2 pass(__COUNTER__)#define f(c) c __COUNTER__#define apply(d) d d __COUNTER__ x2 f(d) y2 __COUNTER__#define _paste(a,b) a ## b#define paste(a,b) _paste(a,b)#define _paste3(a,b,c) a ## b ## c#define doublepaste(a,b) _paste3(a,b,b)#define str(x) #xX4 aX5 f(a)X6 f(b)X7 f(__COUNTER__)X8 apply(a)X9 apply(f(a))X10 apply(__COUNTER__)X11 apply(a2)X12 str(__COUNTER__)X13 paste(x,__COUNTER__)X14 _paste(x,__COUNTER__)X15 doublepaste(x,__COUNTER__)