Я не понимаю...
При выполнении примерно вот такого кода:
std::filesystem::directory_iterator dirIt(strDir);
std::cout << "filename = \"" << dirIt->path().filename().string() << "\" fullname: \"" << dirIt->path().string() << "\" \n"; // 1
std::next(dirIt);
std::cout << "filename = \"" << dirIt->path().filename().string() << "\" fullname: \"" << dirIt->path().string() << "\" \n"; // 2
вывод в строчках 1 и 2 должен совпадать?
А то для используемого мною (Linaro GCC 7.5-2019.12) 7.5.0
std::experimental::filesystem::directory_iterator
вызов
std::next(dirIt); меняет
dirIt.
Это фича или баг?