Skip to content

Commit

Permalink
Automatic update from GitHub Actions workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
github-actions committed Dec 14, 2024
1 parent 7450518 commit de201fa
Show file tree
Hide file tree
Showing 22 changed files with 280 additions and 44 deletions.
92 changes: 92 additions & 0 deletions issue4181.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Issue 4181: Some ranges have negative ssize</title>
<meta property="og:title" content="Issue 4181: Some ranges have negative ssize">
<meta property="og:description" content="C++ library issue. Status: New">
<meta property="og:url" content="https://cplusplus.github.io/LWG/issue4181.html">
<meta property="og:type" content="website">
<meta property="og:image" content="http://cplusplus.github.io/LWG/images/cpp_logo.png">
<meta property="og:image:alt" content="C++ logo">
<style>
p {text-align:justify}
li {text-align:justify}
pre code.backtick::before { content: "`" }
pre code.backtick::after { content: "`" }
blockquote.note
{
background-color:#E0E0E0;
padding-left: 15px;
padding-right: 15px;
padding-top: 1px;
padding-bottom: 1px;
}
ins {background-color:#A0FFA0}
del {background-color:#FFA0A0}
table.issues-index { border: 1px solid; border-collapse: collapse; }
table.issues-index th { text-align: center; padding: 4px; border: 1px solid; }
table.issues-index td { padding: 4px; border: 1px solid; }
table.issues-index td:nth-child(1) { text-align: right; }
table.issues-index td:nth-child(2) { text-align: left; }
table.issues-index td:nth-child(3) { text-align: left; }
table.issues-index td:nth-child(4) { text-align: left; }
table.issues-index td:nth-child(5) { text-align: center; }
table.issues-index td:nth-child(6) { text-align: center; }
table.issues-index td:nth-child(7) { text-align: left; }
table.issues-index td:nth-child(5) span.no-pr { color: red; }
@media (prefers-color-scheme: dark) {
html {
color: #ddd;
background-color: black;
}
ins {
background-color: #225522
}
del {
background-color: #662222
}
a {
color: #6af
}
a:visited {
color: #6af
}
blockquote.note
{
background-color: rgba(255, 255, 255, .10)
}
}
</style>
</head>
<body>
<hr>
<p><em>This page is a snapshot from the LWG issues list, see the <a href="lwg-active.html">Library Active Issues List</a> for more information and the meaning of <a href="lwg-active.html#New">New</a> status.</em></p>
<h3 id="4181"><a href="lwg-active.html#4181">4181</a>. Some ranges have negative <code class='backtick'>ssize</code></h3>
<p><b>Section:</b> 24.7 <a href="https://wg21.link/iterator.range">[iterator.range]</a>, 25.3.11 <a href="https://wg21.link/range.prim.ssize">[range.prim.ssize]</a> <b>Status:</b> <a href="lwg-active.html#New">New</a>
<b>Submitter:</b> Casey Carter <b>Opened:</b> 2024-12-13 <b>Last modified:</b> 2024-12-14</p>
<p><b>Priority: </b>Not Prioritized
</p>
<p><b>View other</b> <a href="lwg-index-open.html#iterator.range">active issues</a> in [iterator.range].</p>
<p><b>View all other</b> <a href="lwg-index.html#iterator.range">issues</a> in [iterator.range].</p>
<p><b>View all issues with</b> <a href="lwg-status.html#New">New</a> status.</p>
<p><b>Discussion:</b></p>
<p>
There exist range types <code class='backtick'>R</code> whose size is representable by neither <code class='backtick'>ptrdiff_t</code> nor
<code><i>make-signed-like-t</i>&lt;ranges::range_size_t&lt;R&gt;&gt;</code>, specifically <code class='backtick'>views::iota(size_t(0), size_t(-1))</code>.
It's unfortunate that <code class='backtick'>std::ssize</code> and <code class='backtick'>ranges::ssize</code> produce a negative size for such ranges even when their
difference type is capable of representing their size (see <a href="https://www.godbolt.org/z/599z55Y4f">demo</a>).
Perhaps the <code class='backtick'>ssize</code> overloads should return
<code>static_cast&lt;common_type_t&lt;ptrdiff_t, iter_difference_t&lt;decltype(<i>meow</i>.begin())&gt;&gt;&gt;(<i>meow</i>.size())</code>
instead when the argument <code><i>meow</i></code> models <code class='backtick'>range</code>?
</p>


<p id="res-4181"><b>Proposed resolution:</b></p>





</body>
</html>
37 changes: 32 additions & 5 deletions lwg-active.html

Large diffs are not rendered by default.

10 changes: 5 additions & 5 deletions lwg-closed.html

Large diffs are not rendered by default.

10 changes: 5 additions & 5 deletions lwg-defects.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion lwg-immediate.html
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ <h1>C++ Standard Library Issues Resolved Directly In [INSERT CURRENT MEETING HER
</tr>
<tr>
<td align="left">Date:</td>
<td align="left">Revised 2024-12-14 at 15:47:42 UTC
<td align="left">Revised 2024-12-14 at 16:00:05 UTC
</td>
</tr>
<tr>
Expand Down
15 changes: 12 additions & 3 deletions lwg-index-open.html
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ <h1>Index by Section</h1>
<p>This document is the Index by Section for the <a href="lwg-active.html">Library Active Issues List</a>.</p>
<h2>Index by Section (non-Ready active issues only)</h2>
<p><a href="lwg-index.html">(view all issues)</a></p>
<p>Revised 2024-12-14 at 15:47:42 UTC
<p>Revised 2024-12-14 at 16:00:05 UTC
</p><h2 id="Section_3">Section 3 (2 issues)</h2>
<p><a href="lwg-index.html#Section_3">(view all issues)</a></p>
<table class="issues-index">
Expand Down Expand Up @@ -2363,7 +2363,7 @@ <h2 id="Section_23">Section 23 (58 issues)</h2>
<td></td>
</tr>
</table>
<h2 id="Section_24">Section 24 (39 issues)</h2>
<h2 id="Section_24">Section 24 (40 issues)</h2>
<p><a href="lwg-index.html#Section_24">(view all issues)</a></p>
<table class="issues-index">
<tr>
Expand Down Expand Up @@ -2711,9 +2711,18 @@ <h2 id="Section_24">Section 24 (39 issues)</h2>
<td></td>
</tr>
<tr>
<td id="4131"><a href="lwg-active.html#4131" title="Including &lt;optional&gt; doesn't provide std::begin/end (Status: New)">4131</a><sup><a href="https://cplusplus.github.io/LWG/issue4131">(i)</a></sup></td>
<td id="4181"><a href="lwg-active.html#4181" title="Some ranges have negative ssize (Status: New)">4181</a><sup><a href="https://cplusplus.github.io/LWG/issue4181">(i)</a></sup></td>
<td><a href="lwg-active.html#New">New</a></td>
<td>24.7 [iterator.range]<a id="iterator.range"></a></td>
<td>Some ranges have negative <code class='backtick'>ssize</code></td>
<td><span class="no-pr">No</span></td>
<td></td>
<td></td>
</tr>
<tr>
<td id="4131"><a href="lwg-active.html#4131" title="Including &lt;optional&gt; doesn't provide std::begin/end (Status: New)">4131</a><sup><a href="https://cplusplus.github.io/LWG/issue4131">(i)</a></sup></td>
<td><a href="lwg-active.html#New">New</a></td>
<td>24.7 [iterator.range]</td>
<td>Including <code>&lt;optional&gt;</code> doesn't provide <code>std::begin/end</code></td>
<td>Yes</td>
<td>3</td>
Expand Down
15 changes: 12 additions & 3 deletions lwg-index.html
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ <h1>Index by Section</h1>
<p>This document is the Index by Section for the <a href="lwg-active.html">Library Active Issues List</a>, <a href="lwg-defects.html">Library Defect Reports and Accepted Issues</a>, and <a href="lwg-closed.html">Library Closed Issues List</a>.</p>
<h2>Index by Section</h2>
<p><a href="lwg-index-open.html">(view only non-Ready open issues)</a></p>
<p>Revised 2024-12-14 at 15:47:42 UTC
<p>Revised 2024-12-14 at 16:00:05 UTC
</p><h2 id="Section_2">Section 2 (2 issues)</h2>
<table class="issues-index">
<tr>
Expand Down Expand Up @@ -13616,7 +13616,7 @@ <h2 id="Section_23">Section 23 (377 issues)</h2>
<td></td>
</tr>
</table>
<h2 id="Section_24">Section 24 (206 issues)</h2>
<h2 id="Section_24">Section 24 (207 issues)</h2>
<p><a href="lwg-index-open.html#Section_24">(view only non-Ready open issues)</a></p>
<table class="issues-index">
<tr>
Expand Down Expand Up @@ -15409,9 +15409,18 @@ <h2 id="Section_24">Section 24 (206 issues)</h2>
<td></td>
</tr>
<tr>
<td id="4131"><a href="lwg-active.html#4131" title="Including &lt;optional&gt; doesn't provide std::begin/end (Status: New)">4131</a><sup><a href="https://cplusplus.github.io/LWG/issue4131">(i)</a></sup></td>
<td id="4181"><a href="lwg-active.html#4181" title="Some ranges have negative ssize (Status: New)">4181</a><sup><a href="https://cplusplus.github.io/LWG/issue4181">(i)</a></sup></td>
<td><a href="lwg-active.html#New">New</a></td>
<td>24.7 [iterator.range]<a id="iterator.range"></a></td>
<td>Some ranges have negative <code class='backtick'>ssize</code></td>
<td><span class="no-pr">No</span></td>
<td></td>
<td></td>
</tr>
<tr>
<td id="4131"><a href="lwg-active.html#4131" title="Including &lt;optional&gt; doesn't provide std::begin/end (Status: New)">4131</a><sup><a href="https://cplusplus.github.io/LWG/issue4131">(i)</a></sup></td>
<td><a href="lwg-active.html#New">New</a></td>
<td>24.7 [iterator.range]</td>
<td>Including <code>&lt;optional&gt;</code> doesn't provide <code>std::begin/end</code></td>
<td>Yes</td>
<td>3</td>
Expand Down
2 changes: 1 addition & 1 deletion lwg-ready.html
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ <h1>C++ Standard Library Issues to be moved in [INSERT CURRENT MEETING HERE]</h1
</tr>
<tr>
<td align="left">Date:</td>
<td align="left">Revised 2024-12-14 at 15:47:42 UTC
<td align="left">Revised 2024-12-14 at 16:00:05 UTC
</td>
</tr>
<tr>
Expand Down
13 changes: 11 additions & 2 deletions lwg-status-date.html
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ <h1>Index by Status and Date</h1>
This document is the Index by Status and Date for the <a href="lwg-active.html">Library Active Issues List</a>,
<a href="lwg-defects.html">Library Defect Reports and Accepted Issues</a>, and <a href="lwg-closed.html">Library Closed Issues List</a>.
</p>
<p>Revised 2024-12-14 at 15:47:42 UTC
<p>Revised 2024-12-14 at 16:00:05 UTC
</p><h2 id="Tentatively_Ready">Tentatively Ready (2 issues)</h2>
<table class="issues-index">
<tr>
Expand Down Expand Up @@ -191,7 +191,7 @@ <h2 id="Tentatively_NAD">Tentatively NAD (9 issues)</h2>
<td></td>
</tr>
</table>
<h2 id="New">New (442 issues)</h2>
<h2 id="New">New (443 issues)</h2>
<table class="issues-index">
<tr>
<th><a href="lwg-toc.html">Issue</a></th>
Expand All @@ -212,6 +212,15 @@ <h2 id="New">New (442 issues)</h2>
<td></td>
</tr>
<tr>
<td id="4181"><a href="lwg-active.html#4181" title="Some ranges have negative ssize (Status: New)">4181</a><sup><a href="https://cplusplus.github.io/LWG/issue4181">(i)</a></sup></td>
<td><a href="lwg-active.html#New">New</a></td>
<td>24.7 [iterator.range]</td>
<td>Some ranges have negative <code class='backtick'>ssize</code></td>
<td><span class="no-pr">No</span></td>
<td></td>
<td></td>
</tr>
<tr>
<td id="4179"><a href="lwg-active.html#4179" title="Wrong range in [alg.search] (Status: New)">4179</a><sup><a href="https://cplusplus.github.io/LWG/issue4179">(i)</a></sup></td>
<td><a href="lwg-active.html#New">New</a></td>
<td>26.6.15 [alg.search]</td>
Expand Down
13 changes: 11 additions & 2 deletions lwg-status.html
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ <h1>Index by Status and Section</h1>
<a href="lwg-defects.html">Library Defect Reports and Accepted Issues</a>, and <a href="lwg-closed.html">Library Closed Issues List</a>.
</p>

<p>Revised 2024-12-14 at 15:47:42 UTC
<p>Revised 2024-12-14 at 16:00:05 UTC
</p><h2 id="Tentatively_Ready">Tentatively Ready (2 issues)</h2>
<table class="issues-index">
<tr>
Expand Down Expand Up @@ -186,7 +186,7 @@ <h2 id="Tentatively_NAD">Tentatively NAD (9 issues)</h2>
<td></td>
</tr>
</table>
<h2 id="New">New (442 issues)</h2>
<h2 id="New">New (443 issues)</h2>
<table class="issues-index">
<tr>
<th><a href="lwg-toc.html">Issue</a></th>
Expand Down Expand Up @@ -2135,6 +2135,15 @@ <h2 id="New">New (442 issues)</h2>
<td></td>
</tr>
<tr>
<td id="4181"><a href="lwg-active.html#4181" title="Some ranges have negative ssize (Status: New)">4181</a><sup><a href="https://cplusplus.github.io/LWG/issue4181">(i)</a></sup></td>
<td><a href="lwg-active.html#New">New</a></td>
<td>24.7 [iterator.range]</td>
<td>Some ranges have negative <code class='backtick'>ssize</code></td>
<td><span class="no-pr">No</span></td>
<td></td>
<td></td>
</tr>
<tr>
<td id="4131"><a href="lwg-active.html#4131" title="Including &lt;optional&gt; doesn't provide std::begin/end (Status: New)">4131</a><sup><a href="https://cplusplus.github.io/LWG/issue4131">(i)</a></sup></td>
<td><a href="lwg-active.html#New">New</a></td>
<td>24.7 [iterator.range]</td>
Expand Down
2 changes: 1 addition & 1 deletion lwg-tentative.html
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@
</style>
</head>
<body>
<p>Revised 2024-12-14 at 15:47:42 UTC
<p>Revised 2024-12-14 at 16:00:05 UTC
</p><h2>Tentative Issues</h2>
<hr>
<h3 id="3578"><a href="#3578">3578</a><sup><a href="https://cplusplus.github.io/LWG/issue3578">(i)</a></sup>. Iterator SCARYness in the context of associative container merging</h3>
Expand Down
11 changes: 10 additions & 1 deletion lwg-toc.html
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ <h1>Table of Contents</h1>
<p>Reference ISO/IEC IS 14882:2024(E)</p>
<p>This document is the Table of Contents for the <a href="lwg-active.html">Library Active Issues List</a>,
<a href="lwg-defects.html">Library Defect Reports and Accepted Issues</a>, and <a href="lwg-closed.html">Library Closed Issues List</a>.</p>
<p>Revised 2024-12-14 at 15:47:42 UTC
<p>Revised 2024-12-14 at 16:00:05 UTC
</p><table class="issues-index">
<tr>
<th><a href="lwg-toc.html">Issue</a></th>
Expand Down Expand Up @@ -33583,6 +33583,15 @@ <h1>Table of Contents</h1>
<td></td>
<td></td>
</tr>
<tr>
<td id="4181"><a href="lwg-active.html#4181" title="Some ranges have negative ssize (Status: New)">4181</a><sup><a href="https://cplusplus.github.io/LWG/issue4181">(i)</a></sup></td>
<td><a href="lwg-active.html#New">New</a></td>
<td>24.7 [iterator.range]</td>
<td>Some ranges have negative <code class='backtick'>ssize</code></td>
<td><span class="no-pr">No</span></td>
<td></td>
<td></td>
</tr>
</table>
</body>
</html>
29 changes: 28 additions & 1 deletion lwg-unresolved.html
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@
</style>
</head>
<body>
<p>Revised 2024-12-14 at 15:47:42 UTC
<p>Revised 2024-12-14 at 16:00:05 UTC
</p><h2>Unresolved Issues</h2>
<hr>
<h3 id="423"><a href="#423">423</a><sup><a href="https://cplusplus.github.io/LWG/issue423">(i)</a></sup>. Effects of negative <code>streamsize</code> in iostreams</h3>
Expand Down Expand Up @@ -64790,5 +64790,32 @@ <h3 id="4180"><a href="#4180">4180</a><sup><a href="https://cplusplus.github.io/



<hr>
<h3 id="4181"><a href="#4181">4181</a><sup><a href="https://cplusplus.github.io/LWG/issue4181">(i)</a></sup>. Some ranges have negative <code class='backtick'>ssize</code></h3>
<p><b>Section:</b> 24.7 <a href="https://wg21.link/iterator.range">[iterator.range]</a>, 25.3.11 <a href="https://wg21.link/range.prim.ssize">[range.prim.ssize]</a> <b>Status:</b> <a href="lwg-active.html#New">New</a>
<b>Submitter:</b> Casey Carter <b>Opened:</b> 2024-12-13 <b>Last modified:</b> 2024-12-14</p>
<p><b>Priority: </b>Not Prioritized
</p>
<p><b>View other</b> <a href="lwg-index-open.html#iterator.range">active issues</a> in [iterator.range].</p>
<p><b>View all other</b> <a href="lwg-index.html#iterator.range">issues</a> in [iterator.range].</p>
<p><b>View all issues with</b> <a href="lwg-status.html#New">New</a> status.</p>
<p><b>Discussion:</b></p>
<p>
There exist range types <code class='backtick'>R</code> whose size is representable by neither <code class='backtick'>ptrdiff_t</code> nor
<code><i>make-signed-like-t</i>&lt;ranges::range_size_t&lt;R&gt;&gt;</code>, specifically <code class='backtick'>views::iota(size_t(0), size_t(-1))</code>.
It's unfortunate that <code class='backtick'>std::ssize</code> and <code class='backtick'>ranges::ssize</code> produce a negative size for such ranges even when their
difference type is capable of representing their size (see <a href="https://www.godbolt.org/z/599z55Y4f">demo</a>).
Perhaps the <code class='backtick'>ssize</code> overloads should return
<code>static_cast&lt;common_type_t&lt;ptrdiff_t, iter_difference_t&lt;decltype(<i>meow</i>.begin())&gt;&gt;&gt;(<i>meow</i>.size())</code>
instead when the argument <code><i>meow</i></code> models <code class='backtick'>range</code>?
</p>


<p id="res-4181"><b>Proposed resolution:</b></p>





</body>
</html>
15 changes: 12 additions & 3 deletions unresolved-index.html
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ <h1>Index by Section</h1>
<p>This document is the Index by Section for the <a href="lwg-active.html">Library Active Issues List</a>, <a href="lwg-defects.html">Library Defect Reports and Accepted Issues</a>, and <a href="lwg-closed.html">Library Closed Issues List</a>.</p>
<h2>Index by Section</h2>
<p><a href="lwg-index-open.html">(view only non-Ready open issues)</a></p>
<p>Revised 2024-12-14 at 15:47:42 UTC
<p>Revised 2024-12-14 at 16:00:05 UTC
</p><h2 id="Section_3">Section 3 (2 issues)</h2>
<p><a href="lwg-index-open.html#Section_3">(view only non-Ready open issues)</a></p>
<table class="issues-index">
Expand Down Expand Up @@ -2354,7 +2354,7 @@ <h2 id="Section_23">Section 23 (57 issues)</h2>
<td></td>
</tr>
</table>
<h2 id="Section_24">Section 24 (39 issues)</h2>
<h2 id="Section_24">Section 24 (40 issues)</h2>
<p><a href="lwg-index-open.html#Section_24">(view only non-Ready open issues)</a></p>
<table class="issues-index">
<tr>
Expand Down Expand Up @@ -2702,9 +2702,18 @@ <h2 id="Section_24">Section 24 (39 issues)</h2>
<td></td>
</tr>
<tr>
<td id="4131"><a href="lwg-active.html#4131" title="Including &lt;optional&gt; doesn't provide std::begin/end (Status: New)">4131</a><sup><a href="https://cplusplus.github.io/LWG/issue4131">(i)</a></sup></td>
<td id="4181"><a href="lwg-active.html#4181" title="Some ranges have negative ssize (Status: New)">4181</a><sup><a href="https://cplusplus.github.io/LWG/issue4181">(i)</a></sup></td>
<td><a href="lwg-active.html#New">New</a></td>
<td>24.7 [iterator.range]<a id="iterator.range"></a></td>
<td>Some ranges have negative <code class='backtick'>ssize</code></td>
<td><span class="no-pr">No</span></td>
<td></td>
<td></td>
</tr>
<tr>
<td id="4131"><a href="lwg-active.html#4131" title="Including &lt;optional&gt; doesn't provide std::begin/end (Status: New)">4131</a><sup><a href="https://cplusplus.github.io/LWG/issue4131">(i)</a></sup></td>
<td><a href="lwg-active.html#New">New</a></td>
<td>24.7 [iterator.range]</td>
<td>Including <code>&lt;optional&gt;</code> doesn't provide <code>std::begin/end</code></td>
<td>Yes</td>
<td>3</td>
Expand Down
Loading

0 comments on commit de201fa

Please sign in to comment.