<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hi Chris,<div><br></div><div>Thanks for the quick response.</div><div><br><div><div>On Apr 8, 2010, at 11:48 AM, Chris Lattner wrote:</div><blockquote type="cite"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div>On Apr 8, 2010, at 8:34 AM, David Peixotto wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">I have found a discrepancy in behavior between the clang preprocessor and gcc. <br><br></div></blockquote><div><br></div>Hi David,</div><div><br></div><div>I'm not particularly interested in fixing this: people abusing the C preprocessor to preprocess things that aren't C don't get much sympathy from me.  However, if you are able to produce a patch that works, doesn't break anything else, and doesn't affect performance, I'd be happy to apply it.</div></div></blockquote><div><br></div><div>I can fully understand your position on this point. I thought I'd report it since the behavior was different than GCC and did prevent clang from being used as a drop-in replacement.</div><div><br></div><blockquote type="cite"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><br><blockquote type="cite"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br>I'd be happy to take a look at fixing this myself if someone could point me in the right direction.<br></div></blockquote></div><div><br></div>lib/Frontend/PrintPreprocessedOutput.cpp is the code that outputs a .i file, the "<span class="Apple-style-span" style="font-family: Inconsolata; font-size: 12px; ">AvoidConcat" stuff is what you want.  It is what decides to add spaces to prevent three . tokens from looking like a ... for example.</span></div></blockquote><div><br></div><div>Great, thanks for the pointer. I'll take a look and if I can come up with something reasonable, I will send a patch.</div><div><br></div><div>-Dave</div><div><br></div></div><br></div></body></html>