/* message.c */ #include #include union Value { char as_c; short as_s; int as_i; long as_l; }; struct Thing { union Value v0; union Value v1; union Value v2; }; #define DUMP_BITS(_v) \ for (int i = sizeof(_v)*8 - 1; i >= 0; i--) {\ if ((i + 1) % 8 == 0) putc(' ', stdout); \ putc(((_v).as_l & 1UL<