Details
- Reviewers
ldionne EricWF mclow.lists - Group Reviewers
Restricted Project - Commits
- rG5b1e5b4338d1: [libc++][P0174] Deprecated/removed parts of default allocator.
Diff Detail
- Repository
- rG LLVM Github Monorepo
- Build Status
Buildable 40801 Build 40933: arc lint + arc unit
Event Timeline
- Replaced use of allocator_traits::max_size with implementation of max_size(). This will be replaced to allocator_traits::max_size once allocator::max_size and allocator_traits::max_size are both marked constexpr.
- Removed deprecated attributes from C++03 codepaths.
- Moved/added more tests.
libcxx/include/memory | ||
---|---|---|
118–125 | Woooh, thanks for the cleanup. | |
1361 | What! I didn't know you could surround literally any piece of code with these pragmas! It does make sense though, since it's a preprocessor thing. Clang will really take the pragma into account when parsing just that part of the declaration? | |
1394 | If the return type of __a.construct(...) somehow hijacks operator,, this won't work. But I don't care, don't change it. An Allocator's construct method is supposed to return void -- if someone's that clever, they deserve to be taught better. | |
1871 | I'm OK with this TODO since I saw you fixed it in a subsequent patch. | |
libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.depr_in_cxx17.fail.cpp | ||
15–16 | Wait, you shouldn't get rid of this test pre-C++17. You should mark it as REQUIRES: c++03, ..., c++14. Or did I miss something and you did not actually remove this test? |
libcxx/include/memory | ||
---|---|---|
1361 | I believe so! | |
1394 | +1 | |
libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.depr_in_cxx17.fail.cpp | ||
15–16 | This test has been moved to libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.cxx2a.pass.cpp, following the pattern for auto_ptr which have auto_ptr.cxx1z.pass.cpp and auto_ptr.depr_in_cxx11.fail.cpp. |
libcxx/include/memory | ||
---|---|---|
1361 | Never mind, You were right. I can't do this 😅 |
libcxx/test/libcxx/depr/depr.default.allocator/allocator_types.depr_in_cxx17.fail.cpp | ||
---|---|---|
35 | I'll admit I'm not the biggest fan of those escape hatches. Let's leave it here to avoid a discussion, but in the future we may want to have a discussion about whether we want to be less forgiving about those. |
libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.depr_in_cxx17.fail.cpp | ||
---|---|---|
17 ↗ | (On Diff #248217) | Just as a statement of how tricky it is to get things right the first time in libc++ (cause we're talking about it elsewhere), this broke the GCC-trunk C++17 bot on Ubuntu, and only that one. Finding it required firing my docker image with a similar configuration to the bot and running another test that we'd expect to fail, but was instead skipped. That hinted me that this test should be unsupported too, and I found the typo. |
libcxx/include/memory | ||
---|---|---|
717 | https://bugs.llvm.org/show_bug.cgi?id=50299 might be of interest |
Woooh, thanks for the cleanup.