STR
#define STR(str) ((str) == NULL ? "NULL" : (str))
enum { STR, VAR, WHITE } state;
#undef STR
#define STR(x) _STR(x)
} STR;
} STR;
#define STR 1