whisperity added a comment.
Looks good.
What happens if the macro is to stringify a partially string argument?
#define BOOYAH(x) #x ";
...
std::string foo = BOOYAH(blabla)
std::string foo2 = BOOYAH("blabla)
int x = 2;
Not sure if these cases are even valid C(XX), but if they are, we should test.
An idea for a follow-up patch if it's not that hard work: you mentioned your
original approach with that madness in the HTML printer. Perhaps it could be
refactored to use this implementation too and thus we'll only have 9 places
where macro expansion logic is to be maintained, not 10. 😈
https://reviews.llvm.org/D52988
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits