[Development] Qt LTS & C++11 plans

Marc Mutz marc.mutz at kdab.com
Mon Nov 23 14:40:38 CET 2015


On Monday 23 November 2015 09:59:43 Olivier Goffart wrote:
> On Friday 13. November 2015 10:37:25 Thiago Macieira wrote:
> > One more thing: I'd like a whitelist of features that have been tested
> > and are known to work on all platforms.
> 
> The white list can be obtained by doing 'git grep "std::"'  :-)
> 
> Anyway, i'd like to start the white list with std::enable_if

I'd like to add <type_traits>, too. And std::declval<>.

All of enable_if, declval, and type_traits don't enter the ABI, even though 
they are part of the API (correct?).

I'd also like to discuss deprecating QPair for std::pair. The standard 
prescribes the layout of a std::pair, so I don't see how two implementations 
can be binary incompatible. In particular, the optimisation of boost's 
compressed_pair, which takes advantage of the empty base class optimisation to 
squash empty element types, doesn't seem to be allowed for std::pair.

(In general, though, I'd -1 any new API using QPair or std::pair instead of a 
hand-made small struct, unless the latter isn't possible (in generic code, 
say)).

Thanks,
Marc

-- 
Marc Mutz <marc.mutz at kdab.com> | Senior Software Engineer
KDAB (Deutschland) GmbH & Co.KG, a KDAB Group Company
Tel: +49-30-521325470
KDAB - The Qt Experts



More information about the Development mailing list