From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2181) id 895BF3883029; Thu, 24 Nov 2022 16:36:36 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 895BF3883029 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1669307796; bh=oeNjN7JY9BOCPKOGDpG45Y7FX49qoE8x5ER3EuSYqwM=; h=From:To:Subject:Date:From; b=S9c2YBxx1HiCOPscp/eOVnYy0nvAM2yWIQZhEYMkkhY/O99zKTUaPhSPc3+x/dQkp TdP/202lF5GnMRYrlMnqVQAtQNnBk7y+mEXJGQ9HPYhLJVdWD70eGhNh1JDp6etWzS tk66QFe9DPCeepVJE7dmzQbxEskODs9aSxF7tjcQ= MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Jonathan Wakely To: gcc-cvs@gcc.gnu.org, libstdc++-cvs@gcc.gnu.org Subject: [gcc r12-8937] libstdc++: Fix tests with non-const operator== X-Act-Checkin: gcc X-Git-Author: Jonathan Wakely X-Git-Refname: refs/heads/releases/gcc-12 X-Git-Oldrev: 377f954242420c6bba380db400bf89ec677647bc X-Git-Newrev: 905047145425c0cf072d3b965e18dc0c1c1ced7a Message-Id: <20221124163636.895BF3883029@sourceware.org> Date: Thu, 24 Nov 2022 16:36:36 +0000 (GMT) List-Id: https://gcc.gnu.org/g:905047145425c0cf072d3b965e18dc0c1c1ced7a commit r12-8937-g905047145425c0cf072d3b965e18dc0c1c1ced7a Author: Jonathan Wakely Date: Thu Nov 10 14:11:27 2022 +0000 libstdc++: Fix tests with non-const operator== These tests fail in strict -std=c++20 mode but their equality ops don't need to be non-const, it looks like an accident. This fixes two FAILs with -std=c++20: FAIL: 20_util/tuple/swap.cc (test for excess errors) FAIL: 26_numerics/valarray/87641.cc (test for excess errors) libstdc++-v3/ChangeLog: * testsuite/20_util/tuple/swap.cc (MoveOnly::operator==): Add const qualifier. * testsuite/26_numerics/valarray/87641.cc (X::operator==): Likewise. (cherry picked from commit fbad7a74aaaddea3d7b39045a09dd3860603658e) Diff: --- libstdc++-v3/testsuite/20_util/tuple/swap.cc | 2 +- libstdc++-v3/testsuite/26_numerics/valarray/87641.cc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libstdc++-v3/testsuite/20_util/tuple/swap.cc b/libstdc++-v3/testsuite/20_util/tuple/swap.cc index c086a4f1a8e..30c8322f01c 100644 --- a/libstdc++-v3/testsuite/20_util/tuple/swap.cc +++ b/libstdc++-v3/testsuite/20_util/tuple/swap.cc @@ -38,7 +38,7 @@ struct MoveOnly MoveOnly(MoveOnly const&) = delete; MoveOnly& operator=(MoveOnly const&) = delete; - bool operator==(MoveOnly const& m) + bool operator==(MoveOnly const& m) const { return i == m.i; } void swap(MoveOnly& m) diff --git a/libstdc++-v3/testsuite/26_numerics/valarray/87641.cc b/libstdc++-v3/testsuite/26_numerics/valarray/87641.cc index 38c35851716..4a6e402831d 100644 --- a/libstdc++-v3/testsuite/26_numerics/valarray/87641.cc +++ b/libstdc++-v3/testsuite/26_numerics/valarray/87641.cc @@ -39,7 +39,7 @@ struct X X() : val(1) { } X& operator+=(const X& x) { val += x.val; return *this; } - bool operator==(const X& x) { return val == x.val; } + bool operator==(const X& x) const { return val == x.val; } int val; };