I'm using Apple Clang on macOS 11.5.2. When I try to compile the following code:
#include <fstream>
#include <iostream>
#include <filesystem>
int main()
{
const std::filesystem::path sandbox{"sandbox"};
std::ofstream{sandbox/"file1.txt"};
std::ofstream{sandbox/"file2.txt"};
std::cout << "directory_iterator:\n";
for(auto const& dir_entry: std::filesystem::directory_iterator{sandbox})
std::cout << dir_entry << '\n';
std::filesystem::remove_all(sandbox);
}
Via the command clang++ foo.cpp -std=c++17 , I get:
foo.cpp:13:19: error: invalid operands to binary expression ('std::__1::ostream' (aka 'basic_ostream<char>') and 'const std::__1::__fs::filesystem::directory_entry')
std::cout << dir_entry << '\n';