Skip to content

Commit 7ee0b79

Browse files
committed
New issue from Nhat Nguyen: "concat_view::iterator's iter_swap has tautologically false noexcept specification"
1 parent caa1860 commit 7ee0b79

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

xml/issue4489.xml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<?xml version='1.0' encoding='utf-8' standalone='no'?>
2+
<!DOCTYPE issue SYSTEM "lwg-issue.dtd">
3+
4+
<issue num="4489" status="New">
5+
<title><tt>concat_view::<i>iterator</i></tt>'s `iter_swap` has tautologically `false noexcept` specification</title>
6+
<section><sref ref="[range.concat.iterator]"/></section>
7+
<submitter>Nhat Nguyen</submitter>
8+
<date>10 Dec 2025</date>
9+
<priority>99</priority>
10+
11+
<discussion>
12+
<p>
13+
The `noexcept` specification of <tt>concat_view::<i>iterator</i></tt>'s `iter_swap` has
14+
<tt>noexcept(ranges::swap(*x, *y))</tt>, where `x` and `y` is <tt>concat_view::<i>iterator</i></tt>.
15+
However, <tt>concat_view::<i>iterator</i></tt>'s `operator*` does not have a `noexcept` specification,
16+
therefore <tt>noexcept(ranges::swap(*x, *y))</tt> is always `false` and then the `noexcept` specification
17+
of <tt>concat_view::<i>iterator</i></tt>'s `iter_swap` is always `noexcept(false)`.
18+
</p>
19+
</discussion>
20+
21+
<resolution>
22+
</resolution>
23+
24+
</issue>

0 commit comments

Comments
 (0)