http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60492 --- Comment #4 from duncan_roe at acslink dot net.au <duncan_roe at acslink dot net.au> --- This works: #define DEFINE_XML_TOKEN_STRING(n, s) const char n##a[] = #s; const wchar_t n##w[] = L###s;