<div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Why not change <span style="font-size:14px;font-family:arial,sans-serif">the token kind of "reduction", "[", ... , "]" to tok::unknown? I suspect tok::comment might do something bad to your one-line "</span><span style="font-size:14px;font-family:arial,sans-serif">meta_for reduction[+: var] (int i=0; i<10; i++)</span><span style="font-family:arial,sans-serif;font-size:14px">".</span></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><span style="font-family:arial,sans-serif;font-size:14px"><br></span></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><span style="font-family:arial,sans-serif;font-size:14px">Regards,</span></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><span style="font-family:arial,sans-serif;font-size:14px">chenwj</span></div></div><div class="gmail_extra"><br><div class="gmail_quote">2017-05-18 2:25 GMT+08:00 Masoud Ataei via cfe-dev <span dir="ltr"><<a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hello,<div><br></div><div>I am new to clang and this problem may be so easy, but it took lots of my time. I am writing a source to source translator by clang for translating from my MetaFork language to OpenMP. I want to translate:</div><div>------------------------------<wbr>----</div><div>meta_for reduction[+: var] (int i=0; i<10; i++)</div><div><br></div><div>to </div><div><br></div><div>#pragma omp parallel for reduction (+: var) </div><div>           for (int i=0; i< 10; i++)</div><div>------------------------------<wbr>----</div><div>What I did to this point, I defined "meta_for" to be "#pragma omp parallel for for" and managed to add a "tok::eod" between two for's in preprocessor. So now, I can translate <br></div><div><div>------------------------------<wbr>----</div></div><div><div>meta_for (int i=0; i<10; i++)</div></div><div><br></div><div>to </div><div><br></div><div><div>#pragma omp parallel for </div><div>           for (int i=0; i< 10; i++)</div></div><div><div>------------------------------<wbr>----</div></div><div><br></div><div>But when I add reduction clause to meta_for, my idea is to comment out " reduction[+: var]" and have a complete parallel for loop, also save the location of reduction clause and operation and variables for later. But when I change the token kind of "reduction", "[", ... , "]" to tok::comment. It gives me a weird error.</div><div><br></div><div>It says  expected to have ")" after "int" to be matched with "("!!!</div><div><br></div><div>can anyone help me on that?</div><div><br></div><div>Thank you. </div><span class="HOEnZb"><font color="#888888"><div><div><br></div>-- <br><div class="m_3772553736362827386gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div>------<br>----------<br>Masoud Ataei (Mr.)<br><div><div><br></div></div></div></div></div></div></div></div></div></div></div></div>
</div></font></span></div>
<br>______________________________<wbr>_________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@lists.llvm.org">cfe-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/cfe-dev</a><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div>Wei-Ren Chen (陳韋任)<br>Homepage: <a href="https://people.cs.nctu.edu.tw/~chenwj" target="_blank">https://people.cs.nctu.edu.tw/~chenwj</a></div></div></div>
</div>