Boost C++ Libraries: Ticket #11947: filesystem: getting file_type from a directory_entry without causing a system call on linux https://svn.boost.org/trac10/ticket/11947 <p> When iterating over a directory with directory_iterator the directory_entries are created with the file_type component of the m_symlink_status defined if the filesystem supports it on Linux due to BOOST_FILESYSTEM_STATUS_CACHE. </p> <p> However the directory iteration does not produce the permission component of the file status. Thus if using <code>somedirectoryentry.symlink_status().type()</code> the library performs a superfluous lstat system call because status_known does not succeed due to permissions_present not succeeding. </p> <p> This is possible to fix e.g. by adding a symlink_type method to the directory_entry class, a patch implementing it is linked below: </p> <p> <a class="ext-link" href="https://github.com/taruti/filesystem/commit/835bcd3c13697cbd7fc3d8574fd07475eeada398"><span class="icon">​</span>https://github.com/taruti/filesystem/commit/835bcd3c13697cbd7fc3d8574fd07475eeada398</a> </p> <p> ps. Is the documentation manually or automatically created and does it need a separate patch? </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/11947 Trac 1.4.3