[Development] Source break policy for function overloads

Jędrzej Nowacki jedrzej.nowacki at qt.io
Wed Jul 13 13:39:19 CEST 2016


On Wednesday 13 of July 2016 10:44:13 Alexander Blasche wrote:
> Hi,
> 
> Yesterday, I stumbled over a break in QtSerialBus due to the addition of new
> QTimer::setInterval(..) overloads in qtbase/dev. This was introduced by
> 
> https://codereview.qt-project.org/#/c/160889/
> 
> Unfortunately this has the undesirable side effect that lines like:
> 
> q->connect(q, &QModbusClient::timeoutChanged, element.timer.data(),
> &QTimer::setInterval);
> 
> do not compile anymore. The function pointer to setInterval() becomes
> ambiguous. While the fix (https://codereview.qt-project.org/#/c/165034/)
> was not difficult once you know what is happening this can hit every
> customer and basically reduces the source compatibility promise into
> absurdity.
> 
> While talking to several devs in the office I could not find a congruent
> opinion on this issue. Do we or even can we care? Do we have a policy?
> 
> --
> Alex
> _______________________________________________
> Development mailing list
> Development at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/development

Hi,

 We do not have SC promise only BC. We tend to not break SC without reason, 
for example we avoid juggling with header files just to "cleanup" stuff, but 
definitely we reserve right to add overloads and new functions.  That is the 
current state, whatever it make sense or not is a different discussion. 

Cheers,
 Jędrek

 



More information about the Development mailing list