[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