Visual Studio 2015 CTP 5 Available
blogs.msdn.com
blogs.msdn.com
http://blogs.msdn.com/b/vcblog/archive/2014/11/17/c-11-14-17...
http://channel9.msdn.com/Events/Visual-Studio/Connect-event-...
Still, outside the open source world, from all vendors selling compilers, Microsoft is the most up to date.
Before anyone mentions ICC, no not even version 15 is fully compliant.
https://software.intel.com/en-us/articles/c0x-features-suppo...
IBM just realeased XLC with partial C++11 support.
Others are even worse.
I'm waiting impatiently for expression SFINAE. I like the features of C++ that let you write dynamic-esque code that's evaluated at compile time. It enables little bits of cleverness that save you from large complicated solutions.
> outside the open source world
Which is quite large, considering that Clang and GCC are the standard compilers for just about every major non-Microsoft platform, including the mobile ones.
I have worked with a few enterprise customers (Fortune 500) that only allowed the compilers from the respective OS vendors. And new versions required an approval process to be followed.
There is more out there than just GNU/Linux, Mac OS X, *BSD and Android.
Granted, this was around 10 years ago, but I doubt the situation changed at all in such environments.
But certainly, the next most complete support for C++11 in a commercial compiler might just be from Oracle Solaris Studio (which, despite the name, is available for Solaris and Linux both):
http://docs.oracle.com/cd/E37069_01/html/E37071/gncix.html#s...
It supports all C++11 features excluding: C++ 11 concurrency and atomic operations, and User-defined literals.
Notably, Oracle Solaris Studio is also one of the few compilers to include full C99 support.
Except that some of the features are only available on UNIX based OS. So you cannot use them if you are after portable code.
If an ANSI C++ feature is currently OS specific on a multi-platform compiler, on my manual it isn't supported.
> But certainly, the next most complete support for C++11 in a commercial compiler might just be from Oracle Solaris Studio
Interesting. I wasn't aware of it.
The last time I spend coding on Solaris was around 2011.
> Notably, Oracle Solaris Studio is also one of the few compilers to include full C99 support.
Even as C++ fanboy, I do concede it is to be expected that a UNIX vendor does support the latest C standards.
After all, it is because of UNIX that we got C and I don't see it being re-written into something else.
There I would like that at least they support "Bounds-checking interfaces (Annex K)" from C11, which is optional.
There I would like that at least they support
"Bounds-checking interfaces (Annex K)" from C11,
which is optional.
The bounds-checking interfaces are really something that has to be provided by libc, so Solaris itself will provide those.Although it isn't highlighted in the release notes in an obvious way, most of the support for C11 is also available in the 12.4 release of the Solaris Studio compiler. The primary things missing are the same things they don't have for C++11: concurrency and atomic primitives.
- can't use many of the new initializer mechanisms in the class declaration (initializer lists, etc...)
- no constexpr
- std::chrono high resolution click isn't actually high resolution but only has millisecond accuracy
Complete list of missing C++11 features up to VS2013 is here: http://msdn.microsoft.com/en-us/library/hh567368.aspx
Microsoft should first complete their C++11 support before moving on to C++14, otherwise it will probably never get fixed.
Visual Studio is a fine IDE, but the C++ compiler lags behind quite a bit.
We have rebuilt the XAML language service on top of the .NET
Compiler Platform ("Roslyn") to provide an improved XAML editing
experience with rich IntelliSense that is faster and more reliable.
My understanding was that Roslyn was heavily geared towards languages that are largely procedural like C# and VB.NET. So functional languages, like F#, aren't suited to being parsed by Roslyn. But all of a sudden they're using Roslyn with a declarative language (XAML)?I don't know what they did, but it seems reasonable that it would share a type checker with C# but have a unique parser.
XAML is at its core a format to describe an object graph declaratively. The objects can be any .NET object.
The current XAML editor already understands a lot about the objects you describe - i.e. it loads the assembly and introspects the types to give you intellisense while editing. The current one is not without its quirks and bugs, however.
I'd be thrilled to have a new, robust editor that intrinsically understands classes, properties, value converters etc to offer more assistance when writing raw XAML.
VS -- Visual Studio
ALM -- Application Lifestyle Management
CTP -- Community Technology Preview
TFS -- Team Foundation Server