+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.
<http://www.gnu.org/licenses/>. */
#include <string.h>
+#include <libc-diag.h>
#ifndef RAWMEMCHR
# define RAWMEMCHR __rawmemchr
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)