From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1105) id A6D89393C85F; Mon, 7 Sep 2020 18:11:27 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org A6D89393C85F Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Joseph Myers To: glibc-cvs@sourceware.org Subject: [glibc] Disable -Wstringop-overread for some string tests X-Act-Checkin: glibc X-Git-Author: Joseph Myers X-Git-Refname: refs/heads/master X-Git-Oldrev: 3357087b2a95a33dbb38579c9bf7b23f1f85c7a1 X-Git-Newrev: e74b61c09a2a2ab52153e731225ccba5078659b1 Message-Id: <20200907181127.A6D89393C85F@sourceware.org> Date: Mon, 7 Sep 2020 18:11:27 +0000 (GMT) X-BeenThere: glibc-cvs@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Glibc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Sep 2020 18:11:27 -0000 https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e74b61c09a2a2ab52153e731225ccba5078659b1 commit e74b61c09a2a2ab52153e731225ccba5078659b1 Author: Joseph Myers Date: Mon Sep 7 18:11:12 2020 +0000 Disable -Wstringop-overread for some string tests Similarly to Maciej's changes to fix the build of rawmemchr in the presence of GCC 11's -Wstringop-overread, also disable that option in two string function tests that have similar warnings and other string function warnings already disabled. Tested with build-many-glibcs.py for aarch64-linux-gnu and arm-linux-gnueabi that it fixes building the glibc testsuite. Diff: --- string/tester.c | 3 +++ string/tst-cmp.c | 8 ++++++++ 2 files changed, 11 insertions(+) diff --git a/string/tester.c b/string/tester.c index bcd7148c2e..b7acf29c81 100644 --- a/string/tester.c +++ b/string/tester.c @@ -47,6 +47,9 @@ DIAG_IGNORE_NEEDS_COMMENT (7, "-Wstringop-overflow="); #if __GNUC_PREREQ (8, 0) DIAG_IGNORE_NEEDS_COMMENT (8, "-Wstringop-truncation"); #endif +#if __GNUC_PREREQ (11, 0) +DIAG_IGNORE_NEEDS_COMMENT (11, "-Wstringop-overread"); +#endif #define STREQ(a, b) (strcmp((a), (b)) == 0) diff --git a/string/tst-cmp.c b/string/tst-cmp.c index 13af0fcb83..e73025cfdf 100644 --- a/string/tst-cmp.c +++ b/string/tst-cmp.c @@ -104,6 +104,10 @@ strncmp_max (const char *left, const char *right) /* GCC 9 warns about the size passed to strncmp being larger than PTRDIFF_MAX; the use of SIZE_MAX is deliberate here. */ DIAG_IGNORE_NEEDS_COMMENT (9, "-Wstringop-overflow="); +#endif +#if __GNUC_PREREQ (11, 0) + /* Likewise GCC 11, with a different warning option. */ + DIAG_IGNORE_NEEDS_COMMENT (11, "-Wstringop-overread"); #endif return strncmp (left, right, SIZE_MAX); DIAG_POP_NEEDS_COMMENT; @@ -117,6 +121,10 @@ strncasecmp_max (const char *left, const char *right) /* GCC 9 warns about the size passed to strncasecmp being larger than PTRDIFF_MAX; the use of SIZE_MAX is deliberate here. */ DIAG_IGNORE_NEEDS_COMMENT (9, "-Wstringop-overflow="); +#endif +#if __GNUC_PREREQ (11, 0) + /* Likewise GCC 11, with a different warning option. */ + DIAG_IGNORE_NEEDS_COMMENT (11, "-Wstringop-overread"); #endif return strncasecmp (left, right, SIZE_MAX); DIAG_POP_NEEDS_COMMENT;