From patchwork Mon Oct 4 18:42:37 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joseph Myers X-Patchwork-Id: 45797 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id CF7A23858436 for ; Mon, 4 Oct 2021 18:44:18 +0000 (GMT) X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from esa4.mentor.iphmx.com (esa4.mentor.iphmx.com [68.232.137.252]) by sourceware.org (Postfix) with ESMTPS id 5D64E3858015 for ; Mon, 4 Oct 2021 18:42:43 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 5D64E3858015 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=codesourcery.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=mentor.com IronPort-SDR: HY0aAQUmSNLUO8SobPUVp2g1VIPysL8YMcrunL0sq/lM8bq0iS6M/jlCPN2p+oq3p11zHE/PIS JZb+ROCkqXM+0BKfhISyIm+9eFvAj8l8RNkXZ//TJPM3n7Vy6bWCGCV0ACLMdN1XGswOxqt50O C1HW/7h/t5kCx7f/XP/57DRGjujyC2DlGqVGlEQ/Uhz2jJEbxq7o3IwpW/GOFXWHS8ANCLoT0H GG35Rkle53QE8JaY72Qr7U8AjmpXXtnWBKu9RYvgHKmXFQCtQhOuOgmdZGJwC9BYsPbDgVgaxA Ejh885WY/xuD23+HqltD9u34 X-IronPort-AV: E=Sophos;i="5.85,346,1624348800"; d="scan'208";a="66799731" Received: from orw-gwy-02-in.mentorg.com ([192.94.38.167]) by esa4.mentor.iphmx.com with ESMTP; 04 Oct 2021 10:42:42 -0800 IronPort-SDR: O3V6T8gKcUj2OrV8hCXn4QH4iLA82d6iYkT8GE2yLWbNFrKHKhLoFsSwTAmoTkxc/qecasCPJo uq+w4KEUpZSTFQAjo5pRP+cAhGogacRkl28i6SvDwgInBGZZEiLEg8vmHQWbiDsEBewBJc6USm 9GE6dwkQ4vff0uV858ipMl7Cxq8GlARkC9DsdPZmm8tt9LV4dPmhCb6CiKCHWxnboj3zfLfoAc vq4sTmEXmd/IRo3ZOYrWX7N2TCByZJzEh5//vsJHWQBhUqYUHLHQcWwA+WgVxGSqKUNA8FaMFQ 8eQ= Date: Mon, 4 Oct 2021 18:42:37 +0000 From: Joseph Myers X-X-Sender: jsm28@digraph.polyomino.org.uk To: Subject: Fix stdlib/tst-setcontext.c for GCC 12 -Warray-compare Message-ID: User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 X-Originating-IP: [137.202.0.90] X-ClientProxiedBy: svr-ies-mbx-01.mgc.mentorg.com (139.181.222.1) To svr-ies-mbx-01.mgc.mentorg.com (139.181.222.1) X-Spam-Status: No, score=-3123.9 required=5.0 tests=BAYES_00, GIT_PATCH_0, HEADER_FROM_DIFFERENT_DOMAINS, KAM_DMARC_STATUS, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces+patchwork=sourceware.org@sourceware.org Sender: "Libc-alpha" Building stdlib/tst-setcontext.c fails with GCC mainline: tst-setcontext.c: In function 'f2': tst-setcontext.c:61:16: error: comparison between two arrays [-Werror=array-compare] 61 | if (on_stack < st2 || on_stack >= st2 + sizeof (st2)) | ^ tst-setcontext.c:61:16: note: use '&on_stack[0] < &st2[0]' to compare the addresses The comparison in this case is deliberate, so adjust it as suggested in that note. Tested with build-many-glibcs.py (GCC mainline) for aarch64-linux-gnu. Reviewed-by: Adhemerval Zanella diff --git a/stdlib/tst-setcontext.c b/stdlib/tst-setcontext.c index 1b511708c1..1c2925bb76 100644 --- a/stdlib/tst-setcontext.c +++ b/stdlib/tst-setcontext.c @@ -58,7 +58,7 @@ f2 (void) puts ("start f2"); printf ("&on_stack=%p\n", on_stack); - if (on_stack < st2 || on_stack >= st2 + sizeof (st2)) + if (&on_stack[0] < &st2[0] || &on_stack[0] >= st2 + sizeof (st2)) { printf ("%s: memory stack is not where it belongs!", __FUNCTION__); exit (1);