GNU C Library master sources branch master updated. glibc-2.25-298-g8fa1167
jsm28@sourceware.org
jsm28@sourceware.org
Wed May 10 00:26:00 GMT 2017
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via 8fa11673d6b0feb3804eba6243e4979087e008a8 (commit)
from d08a482bc2b9a7ae69fd5c587e1f5d12aa317e0d (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=8fa11673d6b0feb3804eba6243e4979087e008a8
commit 8fa11673d6b0feb3804eba6243e4979087e008a8
Author: Joseph Myers <joseph@codesourcery.com>
Date: Wed May 10 00:25:59 2017 +0000
Fix rawmemchr build with GCC 8.
The default rawmemchr implementation uses memchr with size (size_t)-1,
which produces a warning with current GCC mainline. The warning seems
reasonable for normal code, so this patch uses the DIAG_* macros to
disable it.
Tested (compilation of glibc only) with build-many-glibcs.py for
arm-linux-gnueabi and powerpc64le-linux-gnu, two architectures for
which the build was previously failing. Note that the glibc testsuite
will still fail to build with GCC mainline because of
<https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80669>.
* string/rawmemchr.c: Include <libc-diag.h>.
(RAWMEMCHR): Disable -Wstringop-overflow around call to memchr
with size (size_t)-1.
diff --git a/ChangeLog b/ChangeLog
index a772fce..ca56339 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2017-05-10 Joseph Myers <joseph@codesourcery.com>
+
+ * string/rawmemchr.c: Include <libc-diag.h>.
+ (RAWMEMCHR): Disable -Wstringop-overflow around call to memchr
+ with size (size_t)-1.
+
2017-05-09 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/mips/mips32/accept4.c: Remove file.
diff --git a/string/rawmemchr.c b/string/rawmemchr.c
index 54e8dcd..42a3f8a 100644
--- a/string/rawmemchr.c
+++ b/string/rawmemchr.c
@@ -16,6 +16,7 @@
<http://www.gnu.org/licenses/>. */
#include <string.h>
+#include <libc-diag.h>
#ifndef RAWMEMCHR
# define RAWMEMCHR __rawmemchr
@@ -25,8 +26,15 @@
void *
RAWMEMCHR (const void *s, int c)
{
+ DIAG_PUSH_NEEDS_COMMENT;
+#if __GNUC_PREREQ (7, 0)
+ /* GCC 8 warns about the size passed to memchr being larger than
+ PTRDIFF_MAX; the use of SIZE_MAX is deliberate here. */
+ DIAG_IGNORE_NEEDS_COMMENT (8, "-Wstringop-overflow=");
+#endif
if (c != '\0')
return memchr (s, c, (size_t)-1);
+ DIAG_POP_NEEDS_COMMENT;
return (char *)s + strlen (s);
}
libc_hidden_def (__rawmemchr)
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 6 ++++++
string/rawmemchr.c | 8 ++++++++
2 files changed, 14 insertions(+), 0 deletions(-)
hooks/post-receive
--
GNU C Library master sources
More information about the Glibc-cvs
mailing list