Re: [RFA 09/22] Remove make_cleanup_restore_current_ui

Pedro Alves
2016-10-13T15:27:45Z

I hadn't answered everything. Correcting that now.

On 10/13/2016 03:46 PM, Eli Zaretskii wrote:

>> You're automatically assuming it's a burden. I believe that's
>> false.
>
> It should be clear and agreed by all that maintaining two
> implementations for a single feature is more work than maintaining
> just one.

Sure, as general principle. In this particular case, I can't
imagine any amount of significant work.

>>>> Several others have said they think this is a good idea. I've even
>>>> ran this idea through the libstdc++ maintainer in person at the Cauldron.
>>>> Trevor said he wants to do this in gcc as well.
>>>
>>> I just wanted to voice my opposition, that's all. I don't have to
>>> give up just because a few others think otherwise. Right?
>>
>> Of course. The problem is that your opinion is interpreted as
>> a hard blocker. The result is stalling.
>
> If there are no more convincing arguments, then a usual way out of
> stalling is to find some compromise. Is that possible in this case?

I don't think so.

>>>> If redirecting to C++11 std::unique_ptr turns out to cause trouble, or
>>>> I'm hit by a bus, then it's trivial to remove that redirection. All it
>>>> takes is remove a handful of lines of code guarded with
>>>> #if __cplusplus >= 201103 to always go through the fallback implementation.
>>>
>>> Once again, it's not just this single patch that bothers me. Once we
>>> have enough of these #if's, removing them is not necessarily a trivial
>>
>> And not "not necessarily" either... This just looks like fear of
>> the unknown, I'm afraid.
>
> What exactly is unknown here?

The amount of work it'd take to remove the #ifs.

>>> matter, especially when most of the builds, perhaps even all of them,
>>> have been using the C++11 code path all the time, and the other one
>>> has simply bitrotted.
>>
>> As I've said before, we can make use of the buildbot for that.
>> If the fallback code breaks, you get an immediate email notification.
>
> If someone sets it up to build both with and without C++11, yes.
> A.k.a. "maintenance burden".

All you need is one of buildbots testing gdb on an older distro
that doesn't have a new enough compiler. It may even be already
there -- e.g., mjw's debian build bot. So probably zero work,
actually.

Thanks,
Pedro Alves