From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-Status: No, score=-3.4 required=3.0 tests=AWL,BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED, SPF_HELO_PASS,SPF_PASS shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dcvr.yhbt.net (Postfix) with ESMTPS id 16DE61F9FC for ; Sun, 21 Mar 2021 21:53:25 +0000 (UTC) Received: from localhost ([::1]:41972 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lO60h-0007Qg-UA for normalperson@yhbt.net; Sun, 21 Mar 2021 17:53:23 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:49000) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lO60O-0007QN-3s for bug-gnulib@gnu.org; Sun, 21 Mar 2021 17:53:05 -0400 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:57528) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lO60M-0006dy-0A for bug-gnulib@gnu.org; Sun, 21 Mar 2021 17:53:03 -0400 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id EA7D5160105 for ; Sun, 21 Mar 2021 14:52:58 -0700 (PDT) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id C8oCLJe7r-0d; Sun, 21 Mar 2021 14:52:57 -0700 (PDT) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id AE2951600FE; Sun, 21 Mar 2021 14:52:57 -0700 (PDT) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 63qQJ_dYDmb0; Sun, 21 Mar 2021 14:52:57 -0700 (PDT) Received: from penguin.CS.UCLA.EDU (Penguin.CS.UCLA.EDU [131.179.64.200]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 8C5E71600A7; Sun, 21 Mar 2021 14:52:57 -0700 (PDT) From: Paul Eggert To: bug-gnulib@gnu.org Subject: [PATCH] tests: fix signed overflow issues Date: Sun, 21 Mar 2021 14:52:53 -0700 Message-Id: <20210321215253.1105328-1-eggert@cs.ucla.edu> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass client-ip=131.179.128.68; envelope-from=eggert@cs.ucla.edu; helo=zimbra.cs.ucla.edu X-Spam_score_int: -41 X-Spam_score: -4.2 X-Spam_bar: ---- X-Spam_report: (-4.2 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: bug-gnulib@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Gnulib discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Paul Eggert Errors-To: bug-gnulib-bounces+normalperson=yhbt.net@gnu.org Sender: "bug-gnulib" * tests/test-dynarray.c (value_at): Avoid undefined behavior in signed integer multiplication. * tests/test-scratch-buffer.c (byte_at): Likewise, for the theoretically-possible case where size_t is narrower than int. --- ChangeLog | 8 ++++++++ tests/test-dynarray.c | 2 +- tests/test-scratch-buffer.c | 2 +- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 76ea9c3eb..6c4d4b5f2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2021-03-21 Paul Eggert + + tests: fix signed overflow issues + * tests/test-dynarray.c (value_at): Avoid undefined behavior + in signed integer multiplication. + * tests/test-scratch-buffer.c (byte_at): Likewise, for the + theoretically-possible case where size_t is narrower than int. + 2021-03-21 Bruno Haible =20 doc: More updates. diff --git a/tests/test-dynarray.c b/tests/test-dynarray.c index 4308148f8..c3f9a29b5 100644 --- a/tests/test-dynarray.c +++ b/tests/test-dynarray.c @@ -28,7 +28,7 @@ #define N 100000 =20 static int -value_at (int i) +value_at (long long int i) { return (i % 13) + ((i * i) % 251); } diff --git a/tests/test-scratch-buffer.c b/tests/test-scratch-buffer.c index f05c84fa4..517d73fd7 100644 --- a/tests/test-scratch-buffer.c +++ b/tests/test-scratch-buffer.c @@ -24,7 +24,7 @@ #include "macros.h" =20 static int -byte_at (size_t i) +byte_at (unsigned long long int i) { return ((i % 13) + ((i * i) % 251)) & 0xff; } --=20 2.30.2