How can I use C++ 11 features in Clang?

user1368198 picture user1368198 · May 2, 2012 · Viewed 62.8k times · Source

How can I use the latest C++ 11 features in Clang? What (sub)set of features is supported?

Answer

Sergey K. picture Sergey K. · May 2, 2012

You will need clang 3.3 to use the most relevant feature set from C++ 11. Read C++ Support in Clang for the complete list of up-to-date supported features. Clang 3.3 is claimed to be C++11 feature complete.

Clang's command line is gcc-compatible so you have to enable C++11 support via the followinf command-line switch

-std=c++11

There is also a bunch of post-C++11 features (like decltype(auto), member initializers and aggregates) that are supported by Clang 3.3. Use this command line switch to enable them

-std=c++1y