From: Chris Lattner Date: Thu, 17 Apr 2008 23:03:14 +0000 (+0000) Subject: Fix a problem noticed by Nuno, where we wouldn't escape characters in X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9227c6953497be34281354f949d6f4cd34a696cc;p=clang Fix a problem noticed by Nuno, where we wouldn't escape characters in macro expansions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49877 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Rewrite/HTMLRewrite.cpp b/lib/Rewrite/HTMLRewrite.cpp index ced8e5e938..ddf6cbeba2 100644 --- a/lib/Rewrite/HTMLRewrite.cpp +++ b/lib/Rewrite/HTMLRewrite.cpp @@ -451,11 +451,12 @@ void html::HighlightMacros(Rewriter &R, unsigned FileID, } LineLen -= Expansion.size(); - Expansion += ' ' + PP->getSpelling(Tok); + // Escape any special characters in the token text. + Expansion += ' ' + EscapeText(PP->getSpelling(Tok)); LineLen += Expansion.size(); PP->Lex(Tok); } - + // Insert the information about the expansion inside the macro span. Expansion = "" + Expansion + ""; RB.InsertTextBefore(TokOffs+TokLen, Expansion.c_str(), Expansion.size());