~mcf/cproc

ref: 16c718729adfaf40cf22aa4efeafb0d92ef5ee3c cproc/test/preprocess-standard-example-2.c -rw-r--r-- 584 bytes
16c71872Michael Forney Prepare for supporting architecture-specific va_list type 8 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/* C11 6.10.3.5p5 with token concatenation disabled for now */
#define    x          3
#define    f(a)       f(x * (a))
#undef     x
#define    x          2
#define    g          f
#define    z          z[0]
#define    h          g(~
#define    m(a)       a(w)
#define    w          0,1
#define    t(a)       a
#define    p()        int
#define    q(x)       x
//#define    r(x,y)     x ## y
#define    str(x)     # x
f(y+1) + f(f(z)) % t(t(g)(0) + t)(1);
g(x+(3,4)-w) | h 5) & m
	(f)^m(m);
p() i[q()] = { q(1), /*r(2,3), r(4,), r(,5), r(,)*/ };
char c[2][6] = { str(hello), str() };