From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1888) id 380483857343; Fri, 9 Sep 2022 19:05:03 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 380483857343 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1662750303; bh=4uldzB/03AEe2HAkYwFfW2L2miZ3+dEryemoh17a5EY=; h=From:To:Subject:Date:From; b=Xl0qtpEAJMWYExSijTqHY1OB2lJauhF+PKX4+VMEmjJuJ5d3xQYDSsoTcF74PIqqz 7F5PzlAdI1Q71wIRUvEP1D2TGCjlviaEUasHlE+R/y3AIM7BhRvnpCFB/c+OTgeb2X TTBM6gtUVMXalbogA3lWKial3jLdIiOsCKiVXzW4= MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Patrick Palka To: gcc-cvs@gcc.gnu.org, libstdc++-cvs@gcc.gnu.org Subject: [gcc r13-2568] libstdc++: Fix typo in adjacent_view::_Iterator [PR106798] X-Act-Checkin: gcc X-Git-Author: Patrick Palka X-Git-Refname: refs/heads/master X-Git-Oldrev: 718a6d475b3d17759618c68331c85f55c58ec9a3 X-Git-Newrev: e469506b7fdd1bf2c958ca3140573a474fcba3b8 Message-Id: <20220909190503.380483857343@sourceware.org> Date: Fri, 9 Sep 2022 19:05:03 +0000 (GMT) List-Id: https://gcc.gnu.org/g:e469506b7fdd1bf2c958ca3140573a474fcba3b8 commit r13-2568-ge469506b7fdd1bf2c958ca3140573a474fcba3b8 Author: Patrick Palka Date: Fri Sep 9 14:56:37 2022 -0400 libstdc++: Fix typo in adjacent_view::_Iterator [PR106798] PR libstdc++/106798 libstdc++-v3/ChangeLog: * include/std/ranges (adjacent_view::_Iterator::_Iterator): Fix typo. * testsuite/std/ranges/adaptors/adjacent/1.cc (test04): New test. Diff: --- libstdc++-v3/include/std/ranges | 2 +- libstdc++-v3/testsuite/std/ranges/adaptors/adjacent/1.cc | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/libstdc++-v3/include/std/ranges b/libstdc++-v3/include/std/ranges index 2b8fec3c386..37ad80ad3de 100644 --- a/libstdc++-v3/include/std/ranges +++ b/libstdc++-v3/include/std/ranges @@ -5239,7 +5239,7 @@ namespace views::__adaptor requires _Const && convertible_to, iterator_t<_Base>> { for (size_t __j = 0; __j < _Nm; ++__j) - _M_current[__j] = std::move(__i[__j]); + _M_current[__j] = std::move(__i._M_current[__j]); } constexpr auto diff --git a/libstdc++-v3/testsuite/std/ranges/adaptors/adjacent/1.cc b/libstdc++-v3/testsuite/std/ranges/adaptors/adjacent/1.cc index 9829f79364f..443c1fbf450 100644 --- a/libstdc++-v3/testsuite/std/ranges/adaptors/adjacent/1.cc +++ b/libstdc++-v3/testsuite/std/ranges/adaptors/adjacent/1.cc @@ -101,10 +101,22 @@ test03() return true; } +constexpr bool +test04() +{ + // PR libstdc++/106798 + auto r = views::single(0) | views::lazy_split(0) | views::pairwise; + decltype(ranges::cend(r)) s = r.end(); + VERIFY( r.begin() == s ); + + return true; +} + int main() { static_assert(test01()); static_assert(test02()); static_assert(test03()); + static_assert(test04()); }