Support C++11 features
Support C++11 features
The next version of Visual C++ (v11) will already implement a few new features, the ones highlighted here (http://blogs.msdn.com/b/vcblog/archive/2011/09/12/10209291.aspx).
We’re definitely looking at options to get more features into people’s hands before a complete release cycle (before v12). It would be premature to say anything more specific right now. Hopefully, in the coming months, we’ll have more to say about that.
A related request with 4000 votes just got closed: <http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2274165-speed-up-work-on-vc->
Máté Ferenc Nagy-Egri commented
I would like to join Noel on the inquiry. Clang and gcc are way ahead atm, which is strange taking into account that MS has stated multiple times, that they would like to shift from managed to native code, given the effort needed to maintain managed code.
Some insight as to what the status is of the C++11 features inside the compiler, as well as the status of the STL lib update is going. Should developers expect all features being given to the public in 2 months time, or will it be 12 months time (which could still be far ahead of the 2 year VS release cycle thus far)
please add support for constexpr
Has there been any news lately? I recall the CTP being released around 3 months ago.
I know that Mr. Sutter was supposed to announce more features in the first half of this year (which is by no means over yet or even close), but I'm interested in the progress and the evolution of what C++11 features will be going into the much-discussed but very hush-hush interim release of the compiler.
constexpr and deleted keyword please, glad to see you're making progress with vc_compilerCTPNov2012.exe
Here are a few C++11 things I use regularly that would like VS Express for Desktop to support as currently it won't compile my codebase.
1. Support for 32-bit unicode string literals. eg. U"This is a string".
2. Support for constexpr for simple constants - eg. constexpr int FOO = 12;
3. The new typesafe enumerations.
Otherwise, thanks for a great free tool!
Although lambda are supported for native code, I would like them to be supported for managed code. In fact C++ 11 features should be supported in pure or safe managed code as much as possible.
Although, I would prefer automatic selection of the appropriate lambda type (managed or not), if it is not possible, I think that ref keyword could be used to declare a managed lambda as it is already used to declare managed classes.
Günter Ulreich commented
This must be supported soon, because it is - without any other discussion - a step towards the future of C++ based projects. Instead if C++11 a lot of projects have to run ugly coded and outdated libraries to support these features...
Very few C++11 programs run on VC2012. Way behind gcc 4.7
Will more support for C++11 standards be released in an upcoming update or will we have to wait and pay $$ for the next version of Visual Studio? I am sure it's the latter one, typical Microsoft. The C++ team should be really ashamed. Just look at the C++11 support from gcc. Well, this is what happens when people stick with proprietary **** because they decide what to do not us.
Anna Metcalfe commented
@Anonymous It's worth remembering that the Visual C++ compiler pre-dates GCC, so an argument could also be made for the converse.
I don't really think that command line switches the two compilers use are that big a deal though. As you observe writing a wrapper isn't difficult.
I would love to see VC++ becoming more standards compilan with C++11. Moreover I would like it to become more gcc/clang compliant in terms of command line options instead of using their own. I do not think is a big change (but they could enhance uwin's cc to wrap it)..
Hi! I am an open source developer at worldforge and since everyone except me have already moved to linux/eclipse/gcc development environment. Now, we are considering to drop vc++ support, because the lack of c++11 features. So I am forced to move to linux too, just because the vc++ is not capable catching up with bigger compilers like gcc and clang. Thank you.
Support 'constexpr' keyword.
Whats the point of using vc++ these days ?
If microsoft won't support it properly ?
We've switched to using gcc for both linux and windows to get the feature support we want and need. Same code and projects cross platform.
Though it is slowly pushing us to dump windows as our main platform.
We need VC++ to be at least as good as gcc when it comes to C++11 features support, otherwise it makes it ****** and ****** to make case to the management to keep VC++ in production environment on one hand and keeping gcc developers on Linux side from complaining that they have to be restricted to the lowest common denominator.
Forget the bells and whistles, drop the CX mess, in the final analisys all that is worthless if the compiler is not compliant -- compiler is the king!
@George: To microsoft, there are far more works than gcc needing to do while implements almost each new feature. Unlike the gcc which just gets new code in it to let the new C++ styled sources being compiled and left any logical analization troubles to users of the compiler, the microsoft has to settle any new feature at the compiler, intellisence and code analizers/viewers simultaneously. The result is as several amount of times of jobs as gcc's. More, the microsoft seems always drawing many developers from the C++ team to do something else like .net, office and ie developments.
The gcc has no GPU accelerating support YET recently, which now seems the only one weakness than VC compiler.
VC++11 is so far behind enthusiast-driven GCC when it comes to C++11 features, so I wonder whether MS has given to C++11 development way too little resources or they are just not too competent.
well, i have picked up the New VS11 BETA version and then made several code samples for test... Guess what?? THERE IS STILL NO VARIADIC TEMPLATE SUPPORT IMPLIMENTED!
( http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2249771-support-c-11-variadic-templates )