LLVM's Clang Compiler Is Now C++11 Feature Complete

Written by Michael Larabel in LLVM on 19 April 2013 at 03:07 PM EDT. 71 Comments
LLVM
The Clang C/C++ compiler front-end to LLVM is now declared "feature complete" against the C++11 ISO standard.

With a SVN/Git commit made today, the C++11 support within the LLVM/Clang compiler is now deemed "feature complete" with all of the new features to the ISO-approved C++ language update having been implemented.

The last of the C++11 features to be implemented were support for inheriting constructors, and C11/C++11 thread_local. C++11 support has been a very active work-in-progress item for the past several Clang releases. It's been nearly complete for several months but only with the latest LLVM/Clang 3.3 SVN code are all of the features officially implemented.

By Intel developers there has also been a project forming that supports automatically converting C++ code into C++11 to take advantage of new features.

Finishing off this support comes at a time when many open-source projects are beginning to use C++11. LLVM developers have also looked at using some C++11 features within the compiler itself.

For those unfamiliar with the C++11 language features, there is a Wikipedia article and the ISO.org specification.

Meanwhile, in terms of support for GCC (the GNU Compiler Collection) supporting C++11, it's nearly complete. The GCC C++11 state is reflected on this web-page. Most functionality of C++11 is implemented within the recent release of GCC 4.8, but still to be complete is minimal support for garbage collection and reachability-based leak detection, some data-dependency ordering, and a few other small items.

LLVM/Clang 3.3 will be the first compiler release with full C++11 support and its release is expected in June. Besides finishing up the C++11 support, LLVM 3.3 and Clang 3.3 also provides dramatic performance improvements, better Intel AVX2 support, the AMD R600 GPU LLVM back-end, enhancements to its loop vectorizer (and enabled by default for -O3), and numerous other new features and optimizations.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week