This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of New status.

4489. concat_view::iterator's iter_swap has tautologically false noexcept specification

Section: 25.7.18.3 [range.concat.iterator] Status: New Submitter: Nhat Nguyen Opened: 2025-12-10 Last modified: 2025-12-20

Priority: Not Prioritized

View other active issues in [range.concat.iterator].

View all other issues in [range.concat.iterator].

View all issues with New status.

Discussion:

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).

Proposed resolution: