This implements
- LWG2762 unique_ptr operator*() should be noexcept.
Paths
| Differential D128214
[libc++] Makes `unique_ptr operator*() noexcept. AcceptedPublic Authored by Mordante on Jun 20 2022, 9:08 AM.
Details
Diff Detail
Event TimelineComment Actions Thanks for the review! However I will put this on hold. The CI failure seems to indicate there's an issue with the LWG issue. GCC agrees with Clang so I need to do some more investigation.
ldionne added inline comments.
This revision now requires changes to proceed.Sep 12 2023, 10:26 AM Mordante marked 3 inline comments as done. Comment ActionsRebased and address review comments.
Comment Actions LGTM once the comments have been addressed.
This revision is now accepted and ready to land.Nov 3 2023, 10:54 AM Mordante added inline comments.
Revision Contents
Diff 558032 libcxx/docs/Status/Cxx23Issues.csv
libcxx/include/__memory/unique_ptr.h
libcxx/include/memory
libcxx/include/optional
libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference.pass.cpp
libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference_const.pass.cpp
libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference_const_rvalue.pass.cpp
libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference_rvalue.pass.cpp
libcxx/test/std/utilities/optional/optional.object/optional.object.observe/op_arrow.pass.cpp
libcxx/test/std/utilities/optional/optional.object/optional.object.observe/op_arrow_const.pass.cpp
libcxx/test/std/utilities/smartptr/unique.ptr/unique.ptr.class/unique.ptr.observers/dereference.single.pass.cpp |
This comment seems a bit unnecessary to me once we add tests for void. Then it's pretty self explanatory, if you try to remove this the test would fail.