GCC 4.8.1 released, C++11 feature complete

The release of GCC 4.8.1 was announced today (31 May 2013) on the gcc mailing list. In addition to many bug fixes, GCC 4.8.1 adds support for C++11 ref-qualifiers, the final missing C++11 feature. This makes GCC the first C++11 [Ed.: language specification] feature complete compiler to be released.

Information on the full set of changes is available on the GCC 4.8 series page.

Clang 3.3, also C++11 feature complete, is in release testing and the release is currently scheduled for June 5th. Within a week full C++11 support will be available from two major compilers and on numerous platforms supported by those compilers.

Share this Article

Add a Comment

Comments (6)

Hmm, the last paragraph got cut off. It should say something like 'additionally clang and gcc are both forging ahead...' and have links to the compilers' C++1y pages:

http://clang.llvm.org/cxx_status.html#cxx14

http://gcc.gnu.org/projects/cxx1y.html

11

viravera
said on May 31, 2013 01:01 PM:

I have a slight problem with this announcement... I realize that gcc is a separate project from libstdc++, but the two are fairly closely related, and libstdc++'s support for C++11 is definitely incomplete, especially with respect to regular expressions. I find it disingenuous to report the project's C++11 support as feature-complete until the included standard library support is also feature-complete.

Now, I will admit that I haven't been following GCC or libstdc++ very closely since my workplace switched to clang last year, but a glance at the standard library support page (http://gcc.gnu.org/onlinedocs/libstdc++/manual/status.html#status.iso.200x) seems to confirm that this is still the case. I'm also unsure if GCC can somehow be coerced to use libc++ instead, but if so then I'd withdraw my complaint.

Edit: Per seth's comment, which says that libc++ is usable with GCC, I withdraw my complaint. However, I still feel that the libstdc++ team could be a bit more...aggressive in their implementation schedule;)

11

galbraithjoseph
said on May 31, 2013 01:40 PM:

I've been waiting for wstring_convert, codecvt_utf8, and regex support from g++.

I agree that it is a bit disingenuous to report g++ as the first c++11 feature complete compiler when the library is lacking in (to me) fundamental areas.

I'd have to say clang looks to be the first really c++11 feature compiler.

20

seth
said on May 31, 2013 02:08 PM:

I agree I should have been specific about this being language features. The editor rightly added a note, but it should probably be in the title as well.

That said, I believe you can use libc++ with gcc, though I haven't tried it myself.

00

J Wakely
said on Jun 4, 2013 10:54 AM:

@viravera, if you follow the link and read the original announcement it's clear that it refers to language features not the library so I don't think calling it disingenuous is fair.

It's hard to have an aggressive schedule while maintaining backwards-compatibility going back 9 years, and aiming for portability to as many different OS and hardware combinations as GCC targets.

Personally I'm very pleased to have a choice of quality C++11 implementations available, we had to wait much longer for good C++98 implementations to be readily available!

00

viravera
said on Jun 4, 2013 01:50 PM:

@J_Wakely: I certainly agree that it's good to have multiple high quality C++11 implementations. I'm also aware that libstdc++ is a large project that is difficult to keep up to date with current standards. Nonetheless, regex support in particular was ignored for the entirety of the period between TR1 and now. I can agree that the various other small lacking features in the library may take time to implement while maintaining adequate backwards-compatibility, but I feel that a delay of eight years is long enough to say that yes, libstdc++ could in fact have been more aggressive in implementation of the regex feature.

The original implication of disingenuity, which I have already withdrawn, was led by the lack of clarification of the report that the compiler is only feature-complete with regard to language features, not the standard library. Regardless of the original article, any report on it should make this clear, as both seth's comment and the editor's clarification now have. This distinction is important because there is a substantial amount of C++ code that will not compile with GCC 4.8.1 and libstdc++, which would compile with clang-3.3 and libc++.

In any case, now that I'm aware that GCC may be used with libc++, I agree that the original complaint was invalid.