modernc.org/cc@v1.0.1/v2/testdata/cpp-expand/example-6.10.3.5-6.h (about)

     1  #define str(s) # s
     2  #define xstr(s) str(s)
     3  #define debug(s, t) printf("x" # s "= %d, x" # t "= %s", \
     4  		x ## s, x ## t)
     5  #define INCFILE(n) vers ## n
     6  #define glue(a, b) a ## b
     7  #define xglue(a, b) glue(a, b)
     8  #define HIGHLOW "hello"
     9  #define LOW LOW ", world"
    10  
    11  debug(1, 2);
    12  fputs(str(strncmp("abc\0d", "abc", '\4') // this goes away
    13  			== 0) str(: @\n), s);
    14  #include xstr(INCFILE(2).h)
    15  glue(HIGH, LOW);
    16  xglue(HIGH, LOW)