<div dir="ltr">On Wed, Sep 11, 2013 at 3:30 AM, James Dennett <span dir="ltr"><<a href="mailto:james.dennett@gmail.com" target="_blank">james.dennett@gmail.com</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div class="im">On Tue, Sep 10, 2013 at 6:10 PM, Joshua T <<a href="mailto:llvm.mailing@gmail.com">llvm.mailing@gmail.com</a>> wrote:<br>

> Okay, thank you guys!<br>
> It seems that I could solve my problem!<br>
><br>
><br>
><br>
> Usually we just use the lexer towards the "," from the end of the<br>
> parameter... (you know how many there are, so you know whether there is<br>
> going to be a comma or not)<br>
><br>
> Finally, a question for Manuel :-)<br>
> Sorry for bothering you but exploring and understanding clang techniques is<br>
> exiting!<br>
><br>
> Why do you use the lexer?<br>
> Something like this could make it hard to find the correct comma:<br>
><br>
> void foo (int i /* comment , , , , */, /* , , , , */ int j /* ,,,*/, /* ,,,,<br>
> */ int k);<br>
<br>
</div>The next token after "int i" there is the right comma (and similarly<br>
for "int j").  In other words: don't worry, this isn't hard :-)<br></blockquote><div><br></div><div>And if the Lexer is !inKeepCommentMode you can also get comments as tokens.</div></div></div></div>