[Development] Dropping the option to disable QStringBuilder in 5.10?

Marc Mutz marc.mutz at kdab.com
Tue May 16 15:14:39 CEST 2017


I'd like to suggest to drop the option to disable QStringBuilder-backed op+ in 
Qt 5.10. We have been compiling Qt itself with QStringBuilder-backed op+ and 
have seen very little breakages (mainly in qmake, with its own string type).

The reason to drop it is that QStringBuilder is a lot more maintainable than 
op+, since adding a new supported type is O(1) instead of O(N), N = #of 
existing supported types: You just specialise QConcatenable, instead of adding

 { op+(new, old), op+(old, new) | old \in already-supported-types }

And we have been adding a lot of such types for 5.10: char16_t, char16_t*, 
char16_t[N], QStringView, and there are obvious next candidates: std::
(u16)string, wchar_t{,*,[N]}, std::(u16)string_view, CFString, NSString, ...

Any objections?


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, C++ and OpenGL Experts

More information about the Development mailing list