1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
|
#define concat0(a0,a1) a0 ??=??=a1 // trigraph ##
#define concat1(a0,a1) a0 %:%:a1 // digraph ##
#define STRINGIFY0(s) ??= s // trigraph #
#define STRINGIFY1(s) %: s // digraph #
#define msg0(x) printf("%c: %d\n", ??=@ x, x) // trigraph #@
#define msg1(x) printf("%c: %d\n", %:@ x, x) // digraph #@
// trigraph {
void x() ??<
// trigraph []
char a ??(??) = "a";
// diigraph []
char b <::> = "b";
bool f, g, h;
f = g = h = true;
// trigraph ||
f = g ??!??! h;
// trigraph |=
f ??!= g;
// trigraph |
f = g ??! h;
// trigraph ^=
f ??'= g;
// trigraph ^
f = g ??' h;
// trigraph [, ]
int m ??(5??);
// digraph [, ]
int n <:5:>;
// trigraph }
return; ??>
// digraph {, }
int y() <% return 1; %>
|