Thursday, April 14, 2011

C++ compiler that supports C++0x features?

Is where any C++ compiler that supports C++0x features already?

From stackoverflow
  • Both the 2008 Visual C++ 'Feature Pack' and g++ support some features.

    The list of C++0x features supported by g++.


    The Visual C++ 2008 Feature Pack ... includes an implementation of TR1. Portions of TR1 are scheduled for adoption in the upcoming C++0x standard as the first major addition to the ISO 2003 standard C++ library. Our implementation includes a number of important features such as:

    • Smart pointers
    • Regular expression parsing
    • New containers (tuple, array, unordered set, etc)
    • Sophisticated random number generators
    • Polymorphic function wrappers
    • Type traits
    • And more!
    shoosh : I'm pretty sure VS2008 doesn't support any C++0x features. do you have any references for that?
    Pete Kirkham : You made that comment the same minute I added the link.
  • GCC has some of it supported. See here.

  • There are compilers that partially support C++0x, but there can't be full support yet because the final C++0x has not yet been standardized.

    • GCC 4.4 (not released yet) would support some features like auto.
    • GCC 4.3 has not bad tr1 support and some feature like Variadic templates.
    • Latest Intel compiler supports quite well some C++0x features: it already has support of auto and lambda function.
    caspin : 4.2 has complete tr1 support, I believe the 4.1 and 4.0 do as well.
    Artyom : Not really, even 4.3 has "regex" support and you can even compile but regex_match always returns false... it is in GCC to do list. I think in 4.4 dev. branch this should be ok.
  • Microsoft's Visual Studio 2010 CTP (Community Technology Preview) contains support for four C++0x features namely lambdas, auto, static_assert, and rvalue references.

    You can download the VPC image here, make sure to read the bit about accounting for the January 1 2009 expiry date (this blog post is referenced).

    Peter McGrattan : If possible please explain downvote thanks
    Pete Kirkham : Anyone mentioning anything other than g++ gets downvoted by fanboys. Compare my post vs Andy's - both have same link, but also mention VC++, so get down votes.
    Peter McGrattan : @Pete: Thanks I wasn't sure if I had got something incorrect. I thought I'd add a reference to VS2010 since no one else had yet mentioned it. Irrelevantly I do also use g++ as when on linux - surely there is enough room for both especially when answering questions.
  • Scott Meyers has a nice detailed summary of C++0x support across some common compilers here:

    http://www.aristeia.com/C++0x/C++0xFeatureAvailability.htm

0 comments:

Post a Comment

Note: Only a member of this blog may post a comment.