> On Feb 16, 2015, at 10:47 AM, Aaron Ballman <aa...@aaronballman.com> wrote:
> 
> On Mon, Feb 16, 2015 at 1:37 PM, Chris Bieneman <be...@apple.com> wrote:
>> 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
> 
> It's my understanding that we're past step 5 currently, and waiting to
> do step 6.

When I landed the change originally I saw no failures from any public bots. I 
assume Takumi reverted it because there was a failure on a non-public bot. 
Since the change re-landed on Sunday, I don’t think it is really safe to assume 
all non-public bots had been migrated.

I’m not trying to stand in the way of progress here, but I do feel like we’ve 
kinda thrown the plan to the wind here.

> 
>> 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.
> 
> You are correct, if we need to revert, it would be challenging. My
> understanding is that we do not need to revert any further, as
> Chapuni's bots were the last ones that needed specific attention. The
> lld and lldb bots may require further attention, but not certain
> whether they require this change to be reverted? Those owners would
> have to speak up with what they'd like to see happen.

Hopefull there are no issues, but since this was re-landed on a Sunday when a 
lot of people aren’t around and watching I’m nervous that we may have broken 
things when people weren’t looking.

> 
>> So I assume the new plan to just make anyone using MSVC update or they can’t 
>> build anymore.
> 
> They couldn't build after step 3 anyway (almost any source changes
> require CMake to rebuild the solutions, so any source fetches getting
> newer code would also get the CMake files requiring a newer version of
> MSVC before the solution can be generated). The repetition part of the
> above steps is for build bots, not all users (though, obviously, if
> there are major users who are stuck and didn't realize it until now,
> we would have to figure out how to handle that).

Right, but step 4 is to revert that change. We’ve now basically made it 
prohibitively difficult to revert.

Look, I want to use variadic templates as much as the next guy, I’m just also 
wanting to be considerate of our unfortunate colleagues using MSVC.

-Chris

> 
> ~Aaron
> 
>> 
>> -Chris
>> 
>>> On Feb 16, 2015, at 10:32 AM, Aaron Ballman <aa...@aaronballman.com> wrote:
>>> 
>>> On Mon, Feb 16, 2015 at 1:22 PM, Chris Bieneman <be...@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
>> 


_______________________________________________
lldb-dev mailing list
lldb-dev@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev

Reply via email to