[lldb-dev] [LLVMdev] [cfe-dev] [RFC] Raising LLVM minimum required MSVC version to 2013 for trunk

Chris Bieneman beanz at apple.com
Mon Feb 16 10:37:14 PST 2015


The plan as stated was:

1) Loop in cfe-dev and lldb-dev (Done!)
2) Wait until this email fully circulates in digests and LLVM Weekly so that everyone who has an objection can voice it
3) If there are no objections, Commit a change to the CMake build which errors on old MSVC versions
4) Revert and fix buildbots
5) Repeat 3 & 4 until no issues
6) Once the change is live for a week with no issues, update the documentation to reflect the minimum required MSVC version as 2013

This really doesn’t make sense if we are landing changes requiring MSVC 2013 between steps 3&5. Reverting as needed now that we have a stack of changes that is piling up isn’t really viable anymore.

So I assume the new plan to just make anyone using MSVC update or they can’t build anymore.

-Chris

> On Feb 16, 2015, at 10:32 AM, Aaron Ballman <aaron at aaronballman.com> wrote:
> 
> On Mon, Feb 16, 2015 at 1:22 PM, Chris Bieneman <beanz at apple.com> wrote:
>> + Chandler
>> 
>> Ok… What’s going on here?
>> 
>> I see Takumi re-landed the patches, but there have been a lot of changes
>> that came in yesterday that go against the plan for rolling this out.
>> 
>> The original plan (as proposed by Chandler) was to wait a week after landing
>> the CMake change before updating the documentation and allowing new C++11
>> features. This gives adequate time for people who may have missed this
>> thread to adjust.
> 
> Once the CMake changes went live, anyone who was still on MSVC 2012
> could no longer build, regardless. Waiting a week before landing
> changes doesn't make that situation different for those users. I was
> under the impression that the week-long embargo was for the docs only,
> and it was to give us time to stabilize bots as-needed while finding
> out what works and does not work with MSVC 2013 in practice.
> 
>> We now have uses of new C++11 features that aren’t supported by VS2012
>> littered around, which makes backing this change out far less trivial.
>> 
>> What is the plan now?
> 
> I believe the plan is to continue ripping out MSVC 2012 (and earlier)
> compatibility to determine the base feature set that's valid to use.
> For instance, my testing still shows that MSVC 2013 does not
> synthesize move constructors properly, and so a lot of those hacks
> must remain in place. However, it appears that = delete and explicit
> operator support are sufficient to add to the set of working items.
> From this, we can update the documentation.
> 
> ~Aaron





More information about the lldb-dev mailing list