id summary reporter owner description type status milestone component version severity resolution keywords cc 5653 recursive_directory_iterator(error_code) can still throw filesystem_error Geurt Vos Beman Dawes "internally recursive_directory_iterator uses other filesystem facilities (such as is_directory and is_symlink) without passing the system::error_code argument. If they fail, they will throw filesystem_error. Example on Linux (see ticket #5652): int main() { try { error_code ec; for (recursive_directory_iterator i(""."", ec); i != recursive_directory_iterator(); ++i) ; } catch (const std::exception& e) { std::cout << "">> "" << e.what() << std::endl; } } $ ln -s mybadlink mybadlink $ ./test >> boost::filesystem::status: Too many levels of symbolic links: ""./mybadlink"" " Bugs closed To Be Determined filesystem Boost 1.46.1 Problem fixed