util: [refactor] Remove unused create_directories workaround

This was added in commit 1f46b6e46e, but
is no longer needed after g++-12 is the minimum required.
This commit is contained in:
MarcoFalke
2025-11-10 16:43:11 +01:00
parent fa807f78ae
commit fa9dacdbde

View File

@@ -185,29 +185,6 @@ static inline path PathFromString(const std::string& string)
return std::filesystem::path(string);
#endif
}
/**
* Create directory (and if necessary its parents), unless the leaf directory
* already exists or is a symlink to an existing directory.
* This is a temporary workaround for an issue in libstdc++ that has been fixed
* upstream [PR101510].
* https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101510
*/
static inline bool create_directories(const std::filesystem::path& p)
{
if (std::filesystem::is_symlink(p) && std::filesystem::is_directory(p)) {
return false;
}
return std::filesystem::create_directories(p);
}
/**
* This variant is not used. Delete it to prevent it from accidentally working
* around the workaround. If it is needed, add a workaround in the same pattern
* as above.
*/
bool create_directories(const std::filesystem::path& p, std::error_code& ec) = delete;
} // namespace fs
/** Bridge operations to C stdio */