I am trying to get the #include <experimental/any>
to compile in my C++ program on clang OSX
// test.cpp
#include <experimental/any>
int main() {
return 0;
}
Tried following commands/options as learnt from here
clang++ -std=c++14 test.cpp -o test -std=c++1z -stdlib=libc++
clang++ -std=c++1x test.cpp -o test -std=c++1z -stdlib=libc++
clang++ -std=c++1y test.cpp -o test -std=c++1z -stdlib=libc++
clang++ -std=c++1z test.cpp -o test -std=c++1z -stdlib=libc++
But it doesn't compile & complains of the following error:
fatal error: 'experimental/any' file not found
clang++ --version
yields following:
Apple LLVM version 8.1.0 (clang-802.0.42)
Target: x86_64-apple-darwin16.5.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
How can I get #include <experimental/any>
to compile?
Should I upgrade clang on my machine?
Is C++17 supported on clang currently as of today? If yes how can get the support for it?
You misspelt it. It's "experimental", not "experimentals".
However, since Clang 4.0, you should just be using
<any>
.For OSX 10.12.5 (using Xcode Developer tools), we get
and there is no
any
in/Library/Developer/CommandLineTools/usr/include/c++/v1/experimental
, but onlySo, it appears that Apple's libc++ does not provide
any
(there is noany
in/Library/Developer/CommandLineTools/usr/include/c++/v1/
either). You must either use GCC or your own clang orboost/any.hpp
, all of which you can install via homebrew.