[Development] Qt LTS & C++11 plans

Thiago Macieira thiago.macieira at intel.com
Tue Jun 30 22:16:37 CEST 2015


On Tuesday 30 June 2015 18:16:34 Olivier Goffart wrote:
> On Friday 26. June 2015 08:41:11 Thiago Macieira wrote:
> > On Friday 26 June 2015 11:59:11 Olivier Goffart wrote:
> > > However, it is questionable if even this works. We already rely on the
> > > standard library ABI in QException. And most users will have to
> > > recompile
> > > everything if they want to change standard library anyway.
> > 
> > std::exception is compatible between libc++ and libstdc++, so that doesn't
> > count.
> 
> Ok.  (But by luck... another version might not)

s/luck/design/

> Anyway, you did not answer the actual question. Are you against changing the
> policy or not?

I am, for several reasons.

For the container types, please use the Qt ones, for API consistency and 
familiarity. I don't want to see API using std::vector, period.

Since we're talking about *ABI*, it stands to reason we're talking about 
mandatory features, so outside of any #ifdefs that may change between Qt's 
build and the user application's. That means any such feature depending on a 
C++11 library feature should be protected by a configure-time check and a 
#define in qconfig.h. Given our horrible configure script and configure.exe source 
code, writing such checks are difficult and time-consuming. More likely than 
not, we'll get it wrong.

And finally, I am against it because libc++ and libstdc++ co-existence is still 
a goal, even on OS X.

-- 
Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center




More information about the Development mailing list