Title
concat_view::iterator's `iter_swap` has tautologically `false noexcept` specification
Status
new
Section
[range.concat.iterator]
Submitter
Nhat Nguyen

Created on 2025-12-10.00:00:00 last changed 3 days ago

Messages

Date: 2026-01-15.00:00:00

[ 2026-01-16; Reflector poll. ]

Set priority to 3 after reflector poll.

"Might want to add `noexcept` to `operator*`." "Yes, even though it has a narrow contract."

Date: 2025-12-10.00:00:00

The `noexcept` specification of concat_view::iterator's `iter_swap` has noexcept(ranges::swap(*x, *y)), where `x` and `y` is concat_view::iterator. However, concat_view::iterator's `operator*` does not have a `noexcept` specification, therefore noexcept(ranges::swap(*x, *y)) is always `false` and then the `noexcept` specification of concat_view::iterator's `iter_swap` is always `noexcept(false)`.

History
Date User Action Args
2026-01-19 13:27:34adminsetmessages: + msg15896
2025-12-10 00:00:00admincreate