[Development] Source break policy for function overloads
Marc Mutz
marc.mutz at kdab.com
Fri Jan 13 18:41:00 CET 2017
On 2016-07-13 23:55, Lars Knoll wrote:
>> On 13 Jul 2016, at 20:10, Marc Mutz <marc.mutz at kdab.com> wrote:
[...]
>> It should also be noted that there are two categories of SiCs:
>>
>> a. those that can be fixed client-side without breaking compat with
>> older Qt
>> versions, and
>> b. those which cannot
>>
>> IMO, SiCs of type (a) are acceptable, those of type (b) are obviously
>> no-no's.
>>
>> Adding an overload (both cases: 1 + 2 above) is type (a), so is
>> acceptable.
>> Adding explicit to a ctor that should have been but wasn't is also SiC
>> Type
>> (a). In these cases, code that breaks is code that deserves to be
>> broken,
>> because it was brittle.
>>
>> Renaming a public inline function of a non-exported class is BC, but
>> SiC Type
>> (b), so not acceptable.
>
> I think Marc has summed it up very nicely. This is IMO exactly the
> policy we should apply.
QUIP 6 has been created from this:
https://codereview.qt-project.org/182311
More information about the Development
mailing list