<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, Sep 11, 2015 at 3:30 PM, Aaron Ballman <span dir="ltr"><<a href="mailto:aaron@aaronballman.com" target="_blank">aaron@aaronballman.com</a>></span> wrote:<br><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"><span>On Fri, Sep 11, 2015 at 9:27 AM, Alexander Kornienko via cfe-commits<br>
<<a href="mailto:cfe-commits@lists.llvm.org" target="_blank">cfe-commits@lists.llvm.org</a>> wrote:<br>
> Thank you for the fix and sorry for breaking this again. I wonder what's the<br>
> reason windows-targeting enables -fdelayed-template-parsing?<br>
<br>
</span>Because that's required for MSVC compatibility.<br></blockquote><div><br></div><div>That's what I understood from reading <a href="http://clang.llvm.org/docs/UsersManual.html#c_ms" target="_blank">the flag description</a>, however it doesn't help me understand why. But reading <a href="http://stackoverflow.com/questions/13140632/how-can-i-port-msvc-code-with-non-dependent-names-in-templates-to-linux" target="_blank">this</a> and <a href="http://eli.thegreenplace.net/2012/02/06/dependent-name-lookup-for-c-templates/" target="_blank">this</a> made things clear. So it looks like we can't safely turn this off, because some code may rely on this, but with this option the AST doesn't contain bodies of FunctionTemplateDecls, which affects some checks. </div><div><br></div><div>And this seems to be the issue for other Clang Tools as well. There was <a href="http://lists.llvm.org/pipermail/cfe-dev/2014-August/038415.html">a discussion about that</a> last year, which has lead nowhere, I guess.</div><div> </div><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">
<span><br>
> Would it be the right thing to always turn this off in clang-tidy?<br>
<br>
</span> I don't think it would be a good thing to turn off in clang-tidy as<br>
the behavior would diverge from the default in clang on Windows (with<br>
MSVC mode).<br>
<span><font color="#888888"><br>
~Aaron<br>
</font></span><div><div><br>
><br>
><br>
> On Fri, Sep 11, 2015 at 10:16 AM, NAKAMURA Takumi via cfe-commits<br>
> <<a href="mailto:cfe-commits@lists.llvm.org" target="_blank">cfe-commits@lists.llvm.org</a>> wrote:<br>
>><br>
>> Author: chapuni<br>
>> Date: Fri Sep 11 03:16:22 2015<br>
>> New Revision: 247393<br>
>><br>
>> URL: <a href="http://llvm.org/viewvc/llvm-project?rev=247393&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project?rev=247393&view=rev</a><br>
>> Log:<br>
>> clang-tidy/readability-inconsistent-declaration-parameter-name.cpp:<br>
>> Appease MS-incompatibility [-fno-delayed-template-parsing]<br>
>><br>
>> Modified:<br>
>><br>
>> clang-tools-extra/trunk/test/clang-tidy/readability-inconsistent-declaration-parameter-name.cpp<br>
>><br>
>> Modified:<br>
>> clang-tools-extra/trunk/test/clang-tidy/readability-inconsistent-declaration-parameter-name.cpp<br>
>> URL:<br>
>> <a href="http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/test/clang-tidy/readability-inconsistent-declaration-parameter-name.cpp?rev=247393&r1=247392&r2=247393&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/test/clang-tidy/readability-inconsistent-declaration-parameter-name.cpp?rev=247393&r1=247392&r2=247393&view=diff</a><br>
>><br>
>> ==============================================================================<br>
>> ---<br>
>> clang-tools-extra/trunk/test/clang-tidy/readability-inconsistent-declaration-parameter-name.cpp<br>
>> (original)<br>
>> +++<br>
>> clang-tools-extra/trunk/test/clang-tidy/readability-inconsistent-declaration-parameter-name.cpp<br>
>> Fri Sep 11 03:16:22 2015<br>
>> @@ -1,4 +1,4 @@<br>
>> -// RUN: %python %S/check_clang_tidy.py %s<br>
>> readability-inconsistent-declaration-parameter-name %t<br>
>> +// RUN: %python %S/check_clang_tidy.py %s<br>
>> readability-inconsistent-declaration-parameter-name %t -- -std=c++11<br>
>> -fno-delayed-template-parsing<br>
>><br>
>>  void consistentFunction(int a, int b, int c);<br>
>>  void consistentFunction(int a, int b, int c);<br>
>><br>
>><br>
>> _______________________________________________<br>
>> cfe-commits mailing list<br>
>> <a href="mailto:cfe-commits@lists.llvm.org" target="_blank">cfe-commits@lists.llvm.org</a><br>
>> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits</a><br>
><br>
><br>
><br>
> _______________________________________________<br>
> cfe-commits mailing list<br>
> <a href="mailto:cfe-commits@lists.llvm.org" target="_blank">cfe-commits@lists.llvm.org</a><br>
> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits</a><br>
></div></div></blockquote></div>
</div></div>