Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

LLVM&Clang support of C++11

I have some code written by me for MS VC++10. I use C++11 and, in particular, expressions like

std::function<int (int)> f =...;
auto it = v.begin();
for_each(it1, it2,[&](int& i) { ++i;}); 

Now I'm trying out MacOS and XCode with llvm&clang and my code can't be compiled! The question is why? Perhaps, I shall specify an option to use c++11. In this case, where can I fix it in xcode?

like image 540
Kirill Lykov Avatar asked Dec 02 '22 01:12

Kirill Lykov


1 Answers

You will need Xcode 4.2.

In your build settings, search for "c++0x" and set the "C++ Language Dialect to C++0x [-std=c++0x]". Then search for "libc++" and set the "C++ Standard Library" to "libc++".

Not all C++11 facilities are available. For example lambdas are not yet supported.

like image 99
Howard Hinnant Avatar answered Dec 21 '22 11:12

Howard Hinnant