Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Clang Completes C++11 Support

Clang Completes C++11 Support

This item in japanese

Lire ce contenu en français

The Clang compiler team has completed support for the entire C++11 standard. Clang is part of the LLVM Project which provides a “collection of modular and reusable compiler and toolchain technologies.” Clang itself is based on LLVM components and features fast compilation time, and useful diagnostic messages. The multiyear effort to add full C++11 support is now complete making it suitable for developers looking to incorporate the new features of the standard into their projects.


This update to Clang adds the remaining details needed to support C++11:

  • attributes – Provides ability to annotate various peices of code (functions, variables, blocks, etc)
  • inheriting constructors – Allows a derived class to have the same constructors as the base
  • thread local variables – Provides the ability for threads in multithreaded applications to have unique data on a per thread basis

Looking ahead, the Clang team will begin implementing the features introduced in the C++1y standard (formal name not announced). The measure of completeness for these features can be found on the project's CXX page which is regularly updated.


Clang is not the only open source compiler supporting C++11, with the GCC project still actively developing its implementation. The Apache project maintains a list of several compilers (commercial and otherwise) with their corresponding level of support for C+11. 

Rate this Article