[Qt-creator] Planning Qt Creator 2.8 + 0.1

Teske Daniel Daniel.Teske at digia.com
Thu Jun 13 17:11:32 CEST 2013


> 6. Use of C++11. There are quite a few goodies in the language nowadays
> that look very interesting. We should identify a few ones that would really
> help us, and double check with the compilers we need to support which
> ones we could actually use, and then decide on whether we should, or not.
> For that, input on which compilers people actually use, and which they
> really need to use to compile Creator would be beneficial.

To start the discussion on that, see http://wiki.apache.org/stdcxx/C++0xCompilerSupport for an idea of which compilers support which feature.
Both g++ 4.8 and clang 3.3 support all of c++11, the Microsoft compiler lacks quite a bit. (Btw, cl 11.0 == VS2012, cl 10 == VS2010).

Does anyone use any other compiler to compile Creator? 
If so, you should speak up now.

>From that table it is also pretty clear that the main limiting factor is Visual Studio.
If we set the minimum supported version at Visual Studio 2008, then we can't make use of any C++11 features. 

If we move the minimum version to Visual Studio 2010,  then the following features are supported (straight from the table):
auto (g++ 4.4; clang 2.9)
decltype (g++ 4.3, clang 2.9)
lambda (g++ 4.5, clang 3.1)
Local and Unnamed Types as Template Arguments (g++ 4.5, clang 2.9)
New function declaration syntax for deduced return types (g++ 4.4, clang 2.9)
nullptr (g++ 4.6, clang 2.9)
r-Value References, std::move (g++ 4.5, clang 2.9)
static_assert (g++ 4.3, clang 2.9)

clang 2.9 was released 7.4.2011
clang 3.1 was released 22.5.2012

g++ 4.6  was released 25.3.2011 

I think we can't yet require Visual Studio 2012, so that leaves us imho with two options:
Minimum version: VS2010, clang 2.9, g++ 4.6 => auto, decltype, r-value, static_assert
or
Minimum version: VS2010, clang 3.1, g++4.6 => the above + lambda

I vastly prefer the second one.

daniel



More information about the Qt-creator mailing list