[Development] Removing the -c++11 option from configure

Matthew Woehlke mw_triad at users.sourceforge.net
Tue Mar 24 18:38:54 CET 2015

On 2015-03-24 12:51, René J.V. Bertin wrote:
> On Tuesday March 24 2015 08:39:17 Thiago Macieira wrote:
>>> if you want to enable support c++11+ by default (it isn't yet?), do it,
>>> but why would you *remove* an option?
>> I want to remove the ability to disable C++11 support. 
>> The support is already enabled by default and we'd like to now enable C++14 
>> too, but I'd like not to add complexity to the configuration by adding a 
>> c++14/no-c++14 option.
> What does that have to do with being able to deactivate C++11? /Methinks it might be a while before C++14 can become the default on all supported systems, no?

Option 1: Provide selection of language level support. Right now this
would require four switches ([no-]c++11, [no-]c++14). This has various
and hopefully fairly obvious drawbacks.

Option 2: Use the highest available language level support. The drawback
is that if your compiler supports C++xy, Qt will be built in C++xy mode
*with no way to force a different mode*.

Thiago is proposing Option 2. In particular, the emphasized drawback;
what is being removed is the ability to *prevent* Qt from enabling C++11
/ C++14 mode if the compiler supports such a mode. It does *not* mean
that Qt as a whole will require C++14. I think where the confusion is
occurring is that there is an implicit "where supported by the compiler"
in "enabled by default". C++11 / C++14 will be enabled (by default /
unconditionally) *on compilers that support those modes*. We're not
talking about dropping support for pre-C++11/14 compilers, just dropping
the ability to not make use of the same if it is present.

Hopefully that helps clear things up...


More information about the Development mailing list