[Development] Removing the -c++11 option from configure
Thiago Macieira
thiago.macieira at intel.com
Mon Mar 23 14:57:38 CET 2015
On Monday 23 March 2015 08:55:36 Stephen Kelly wrote:
> Thiago Macieira wrote:
> > Anything I missed? Opinions?
>
> As far as I know, qmake `CONFIG += c++11` causes
>
> -std=c++11
>
> or similar to be used on compile and link lines. For the sake of user code,
> you might want to use
>
> -std=gnu++11
The reason we prefer -std=c++11 is that it allows us to write code that
doesn't trip GNU extensions unlikely to be found on MSVC and other compilers.
So I really want to keep -std=c++11, except for a module or two that really
need it (QtBluetooth comes to mind due to BlueZ headers assuming GCC
extensions are enabled).
User code has been using this flag just fine for a couple of years, so I don't
think they need -std=gnu++11.
> http://thread.gmane.org/gmane.comp.programming.tools.cmake.devel/10214
>
> I don't know if that has any particular benefits for the build of Qt, but
> something to consider while on the topic, and when considering qmake users
> using `CONFIG += c++11` (though I have not seen qmake users complain about
> this).
You have good arguments there, but since CONFIG += c++11 is primarily used by
Qt itself, I think we need to put our own needs first.
--
Thiago Macieira - thiago.macieira (AT) intel.com
Software Architect - Intel Open Source Technology Center
More information about the Development
mailing list