Skip to content

Commit 6776d65

Browse files
[libc++] Implement LWG3953 (#107535)
Closes #105303
1 parent eec1ee8 commit 6776d65

File tree

3 files changed

+3
-3
lines changed

3 files changed

+3
-3
lines changed

libcxx/docs/Status/Cxx2cIssues.csv

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
"`LWG3948 <https://wg21.link/LWG3948>`__","``possibly-const-range and as-const-pointer`` should be ``noexcept``","2023-11 (Kona)","","",""
3131
"`LWG3949 <https://wg21.link/LWG3949>`__","``std::atomic<bool>``'s trivial destructor dropped in C++17 spec wording","2023-11 (Kona)","","",""
3232
"`LWG3951 <https://wg21.link/LWG3951>`__","[expected.object.swap]: Using ``value()`` instead of ``has_value()``","2023-11 (Kona)","|Complete|","16.0",""
33-
"`LWG3953 <https://wg21.link/LWG3953>`__","``iter_move`` for ``common_iterator`` and ``counted_iterator`` should return ``decltype(auto)``","2023-11 (Kona)","","",""
33+
"`LWG3953 <https://wg21.link/LWG3953>`__","``iter_move`` for ``common_iterator`` and ``counted_iterator`` should return ``decltype(auto)``","2023-11 (Kona)","|Complete|","20.0",""
3434
"`LWG3957 <https://wg21.link/LWG3957>`__","[container.alloc.reqmts] The value category of v should be claimed","2023-11 (Kona)","","",""
3535
"`LWG3965 <https://wg21.link/LWG3965>`__","Incorrect example in [format.string.escaped] p3 for formatting of combining characters","2023-11 (Kona)","|Complete|","19.0",""
3636
"`LWG3970 <https://wg21.link/LWG3970>`__","[mdspan.syn] Missing definition of ``full_extent_t`` and ``full_extent``","2023-11 (Kona)","","",""

libcxx/include/__iterator/common_iterator.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ class common_iterator {
235235
return std::__unchecked_get<_Sent>(__x.__hold_) - std::__unchecked_get<_I2>(__y.__hold_);
236236
}
237237

238-
_LIBCPP_HIDE_FROM_ABI friend constexpr iter_rvalue_reference_t<_Iter>
238+
_LIBCPP_HIDE_FROM_ABI friend constexpr decltype(auto)
239239
iter_move(const common_iterator& __i) noexcept(noexcept(ranges::iter_move(std::declval<const _Iter&>())))
240240
requires input_iterator<_Iter>
241241
{

libcxx/include/__iterator/counted_iterator.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -249,7 +249,7 @@ class counted_iterator
249249
return __rhs.__count_ <=> __lhs.__count_;
250250
}
251251

252-
_LIBCPP_HIDE_FROM_ABI friend constexpr iter_rvalue_reference_t<_Iter>
252+
_LIBCPP_HIDE_FROM_ABI friend constexpr decltype(auto)
253253
iter_move(const counted_iterator& __i) noexcept(noexcept(ranges::iter_move(__i.__current_)))
254254
requires input_iterator<_Iter>
255255
{

0 commit comments

Comments
 (0)