This is implemented as a DR on top of C++17.
Details
- Reviewers
philnik - Group Reviewers
Restricted Project - Commits
- rG1cf344d9465a: [libc++] Implement LWG3657 std::hash<filesystem::path>
Diff Detail
- Repository
- rG LLVM Github Monorepo
Unit Tests
Event Timeline
Seems reasonable to me. We should close https://reviews.llvm.org/D125394 when/if we land your review here.
LGTM % nits.
libcxx/include/__filesystem/path.h | ||
---|---|---|
1092 | I don't think we have to inherit from unary_function here, and I don't really see a point if we don't have to. | |
libcxx/test/std/input.output/filesystems/class.path/path.member/path.compare.pass.cpp | ||
138–139 | Unfortunatley, we provide std::filesystem as an extension in C++11 and C++14 under std::__fs::filesystem. |
libcxx/include/__filesystem/path.h | ||
---|---|---|
1092 | The std::hash base template is specified to have those members in C++17 even though they are deprecated. So to be strictly conforming, I think it's better to provide them. |
I don't think we have to inherit from unary_function here, and I don't really see a point if we don't have to.