<div dir="ltr">Learned this the hard way after spending a few hours with the help of chandlerc to diagnose a problem.  The TL;DR is that template aliases are NOT ready for prime time.  Please don't use them on any platform until we raise the minimum version to VS 2015.<br></div><br><div class="gmail_quote">On Fri Feb 13 2015 at 4:47:07 PM NAKAMURA Takumi <<a href="mailto:geek4civic@gmail.com">geek4civic@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Please wait. I'll revert it for now. I'll reland it when I am ready.<br>
<br>
2015-02-14 8:27 GMT+09:00 Chris Bieneman <<a href="mailto:beanz@apple.com" target="_blank">beanz@apple.com</a>>:<br>
> I have moved onto the next phase and committed r229185, which makes VS2013 our minimum version. I will revert if issues arise, and we can rinse and repeat as necessary.<br>
><br>
> Once it sticks for a bit I’ll update the docs too.<br>
><br>
> -Chris<br>
><br>
>> On Feb 9, 2015, at 10:07 AM, Chris Bieneman <<a href="mailto:beanz@apple.com" target="_blank">beanz@apple.com</a>> wrote:<br>
>><br>
>> I agree with Aaron, this should not be a blocker because the workaround is simple. I'm also not opposed to raising the minimum CMake version all the way to 3.0. CMake 3 is 6 months old and CMake 3.1 is already out.<br>
>><br>
>> I think most (if not all) our internal users are on 3.0 now, and those that may not be are either on old branches of LLVM or have no excuse not to update. I can start a separate thread with that proposal.<br>
>><br>
>> -Chris<br>
>><br>
>> Sent from my iPad<br>
>><br>
>>> On Feb 9, 2015, at 7:44 AM, Aaron Ballman <<a href="mailto:aaron@aaronballman.com" target="_blank">aaron@aaronballman.com</a>> wrote:<br>
>>><br>
>>>> On Mon, Feb 9, 2015 at 8:36 AM, Greg Bedwell <<a href="mailto:gregbedwell@gmail.com" target="_blank">gregbedwell@gmail.com</a>> wrote:<br>
>>>> We've just encountered an issue with ninja and VS2013 when using versions of<br>
>>>> CMake prior to 2.8.12.1.  This isn't a combination that we typically use so<br>
>>>> we've not run into it previously in our own builds.  It isn't specifically<br>
>>>> tied to upgrading the minimum version as it's a problem that already exists<br>
>>>> but I figure we'll hit it sooner or later on one of the bots as people start<br>
>>>> to use 2013 so best to deal with it sooner.  Essentially, when building any<br>
>>>> configuration through ninja with debug data enabled with anything more than<br>
>>>> -j1 we'll hit an error like:<br>
>>>><br>
>>>> C:\work\public_svn\llvm\lib\<u></u>Support\APInt.cpp : fatal error C1041: cannot<br>
>>>> open program database<br>
>>>> 'c:\work\public_svn\build-<u></u>vs2013-native-ninja\lib\<u></u>llvmsupport.pdb'; if<br>
>>>> multiple CL.EXE write to the same .PDB file, please use /FS<br>
>>>><br>
>>>> Here's the relevant CMake tracker which shows the fix going into <a href="http://2.8.12.1" target="_blank">2.8.12.1</a>:<br>
>>>> <a href="http://www.cmake.org/Bug/view.php?id=14492" target="_blank">http://www.cmake.org/Bug/view.<u></u>php?id=14492</a><br>
>>>><br>
>>>> I think our options are to either require CMake 2.8.12.1 for VS2013/ninja<br>
>>>> builds (but I don't know how feasible this is) or we can put our own<br>
>>>> workaround into our CMakelists to push the /FS switch when using Ninja and<br>
>>>> Visual Studio, unless someone has any better ideas?<br>
>>>><br>
>>>> Any thoughts?  Is this a blocker for updating the minimum version?<br>
>>><br>
>>> I'm not certain I see it as a blocker since upgrading CMake should not<br>
>>> be too difficult (2.8.12.1 was released in Nov 2013). Whether we want<br>
>>> to require 2.8.12.1 is a different ball of wax, but for just the Ninja<br>
>>> + MSVC build, I don't think that's too onerous (then again, I don't<br>
>>> use Ninja for my builds, either).<br>
>>><br>
>>> ~Aaron<br>
>><br>
>> ______________________________<u></u>_________________<br>
>> LLVM Developers mailing list<br>
>> <a href="mailto:LLVMdev@cs.uiuc.edu" target="_blank">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a><br>
>> <a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/<u></u>mailman/listinfo/llvmdev</a><br>
><br>
><br>
> ______________________________<u></u>_________________<br>
> lldb-dev mailing list<br>
> <a href="mailto:lldb-dev@cs.uiuc.edu" target="_blank">lldb-dev@cs.uiuc.edu</a><br>
> <a href="http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev" target="_blank">http://lists.cs.uiuc.edu/<u></u>mailman/listinfo/lldb-dev</a><br>
<br>
______________________________<u></u>_________________<br>
LLVM Developers mailing list<br>
<a href="mailto:LLVMdev@cs.uiuc.edu" target="_blank">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/<u></u>mailman/listinfo/llvmdev</a><br>
</blockquote></div>