Details
- Reviewers
ldionne EricWF - Group Reviewers
Restricted Project - Commits
- rG097d77d611d1: [libcxx] Allow shared_ptr's unique_ptr converting constructor to support array…
Diff Detail
- Repository
- rG LLVM Github Monorepo
Unit Tests
Event Timeline
Sorry this fell through the cracks. Let's fix this!
Do we have the same problem for operator=? We should rebase and make sure CI passes - LMK if you'd like me to commandeer this.
libcxx/include/memory | ||
---|---|---|
3257 | Interestingly enough, updating the enable_if here wasn't required to get the tests to pass, I think because of implicit conversion to shared_ptr before the assignment happens. |
libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.assign/unique_ptr_Y.pass.cpp | ||
---|---|---|
131 ↗ | (On Diff #336176) | This is not testing operator=, this is testing initialization! |
libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/unique_ptr.pass.cpp | ||
13 | Hmm, this shouldn't be explicit. It looks like the implementation is OK, only this comment is wrong. Can you fix as a fly-by? |
Thanks! Ship it once CI passes. And you can then close https://llvm.org/PR32147. Thanks a lot!
libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/unique_ptr.pass.cpp | ||
---|---|---|
181 | shared_ptr<array[]> wasn't supported until C++17, so these tests shouldn't be enabled until C++17. That's why the C++14 build is failing. |
Interestingly enough, updating the enable_if here wasn't required to get the tests to pass, I think because of implicit conversion to shared_ptr before the assignment happens.