Use DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION to silence GCC 8.1
GCC 8.1 warns about destination size with -Wstringop-truncation: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85643 Use DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION to silence it. bfd/ PR binutils/23146 * bfd-in.h: Include "diagnostics.h". * bfd-in2.h: Regenerated. * elf32-arm.c (elf32_arm_nabi_write_core_note): Use DIAGNOSTIC_PUSH, DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION and DIAGNOSTIC_POP to silence GCC 8.1 warnings with -Wstringop-truncation. * elf32-ppc.c (ppc_elf_write_core_note): Likewse. * elf32-s390.c (elf_s390_write_core_note): Likewse. * elf64-ppc.c (ppc64_elf_write_core_note): Likewse. * elf64-s390.c (elf_s390_write_core_note): Likewse. * elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewse. include/ * diagnostics.h (DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION): Always define for GCC.
This commit is contained in:
parent
62b74cb8b0
commit
95da985446
@ -1,3 +1,18 @@
|
||||
2018-06-04 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
PR binutils/23146
|
||||
* bfd-in.h: Include "diagnostics.h".
|
||||
* bfd-in2.h: Regenerated.
|
||||
* elf32-arm.c (elf32_arm_nabi_write_core_note): Use
|
||||
DIAGNOSTIC_PUSH, DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION and
|
||||
DIAGNOSTIC_POP to silence GCC 8.1 warnings with
|
||||
-Wstringop-truncation.
|
||||
* elf32-ppc.c (ppc_elf_write_core_note): Likewse.
|
||||
* elf32-s390.c (elf_s390_write_core_note): Likewse.
|
||||
* elf64-ppc.c (ppc64_elf_write_core_note): Likewse.
|
||||
* elf64-s390.c (elf_s390_write_core_note): Likewse.
|
||||
* elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewse.
|
||||
|
||||
2018-06-03 Jim Wilson <jimw@sifive.com>
|
||||
|
||||
PR ld/23244
|
||||
|
@ -34,6 +34,7 @@ extern "C" {
|
||||
|
||||
#include "ansidecl.h"
|
||||
#include "symcat.h"
|
||||
#include "diagnostics.h"
|
||||
#include <stdarg.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
|
@ -41,6 +41,7 @@ extern "C" {
|
||||
|
||||
#include "ansidecl.h"
|
||||
#include "symcat.h"
|
||||
#include "diagnostics.h"
|
||||
#include <stdarg.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
|
@ -2174,7 +2174,16 @@ elf32_arm_nabi_write_core_note (bfd *abfd, char *buf, int *bufsiz,
|
||||
va_start (ap, note_type);
|
||||
memset (data, 0, sizeof (data));
|
||||
strncpy (data + 28, va_arg (ap, const char *), 16);
|
||||
DIAGNOSTIC_PUSH;
|
||||
/* GCC 8.1 warns about 80 equals destination size with
|
||||
-Wstringop-truncation:
|
||||
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85643
|
||||
*/
|
||||
#if GCC_VERSION == 8001
|
||||
DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION;
|
||||
#endif
|
||||
strncpy (data + 44, va_arg (ap, const char *), 80);
|
||||
DIAGNOSTIC_POP;
|
||||
va_end (ap);
|
||||
|
||||
return elfcore_write_note (abfd, buf, bufsiz,
|
||||
|
@ -2411,7 +2411,16 @@ ppc_elf_write_core_note (bfd *abfd, char *buf, int *bufsiz, int note_type, ...)
|
||||
va_start (ap, note_type);
|
||||
memset (data, 0, sizeof (data));
|
||||
strncpy (data + 32, va_arg (ap, const char *), 16);
|
||||
DIAGNOSTIC_PUSH;
|
||||
/* GCC 8.1 warns about 80 equals destination size with
|
||||
-Wstringop-truncation:
|
||||
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85643
|
||||
*/
|
||||
#if GCC_VERSION == 8001
|
||||
DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION;
|
||||
#endif
|
||||
strncpy (data + 48, va_arg (ap, const char *), 80);
|
||||
DIAGNOSTIC_POP;
|
||||
va_end (ap);
|
||||
return elfcore_write_note (abfd, buf, bufsiz,
|
||||
"CORE", note_type, data, sizeof (data));
|
||||
|
@ -3951,7 +3951,16 @@ elf_s390_write_core_note (bfd *abfd, char *buf, int *bufsiz,
|
||||
va_end (ap);
|
||||
|
||||
strncpy (data + 28, fname, 16);
|
||||
DIAGNOSTIC_PUSH;
|
||||
/* GCC 8.1 warns about 80 equals destination size with
|
||||
-Wstringop-truncation:
|
||||
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85643
|
||||
*/
|
||||
#if GCC_VERSION == 8001
|
||||
DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION;
|
||||
#endif
|
||||
strncpy (data + 44, psargs, 80);
|
||||
DIAGNOSTIC_POP;
|
||||
return elfcore_write_note (abfd, buf, bufsiz, "CORE", note_type,
|
||||
&data, sizeof (data));
|
||||
}
|
||||
|
@ -3041,7 +3041,16 @@ ppc64_elf_write_core_note (bfd *abfd, char *buf, int *bufsiz, int note_type,
|
||||
va_start (ap, note_type);
|
||||
memset (data, 0, sizeof (data));
|
||||
strncpy (data + 40, va_arg (ap, const char *), 16);
|
||||
DIAGNOSTIC_PUSH;
|
||||
/* GCC 8.1 warns about 80 equals destination size with
|
||||
-Wstringop-truncation:
|
||||
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85643
|
||||
*/
|
||||
#if GCC_VERSION == 8001
|
||||
DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION;
|
||||
#endif
|
||||
strncpy (data + 56, va_arg (ap, const char *), 80);
|
||||
DIAGNOSTIC_POP;
|
||||
va_end (ap);
|
||||
return elfcore_write_note (abfd, buf, bufsiz,
|
||||
"CORE", note_type, data, sizeof (data));
|
||||
|
@ -3760,7 +3760,16 @@ elf_s390_write_core_note (bfd *abfd, char *buf, int *bufsiz,
|
||||
va_end (ap);
|
||||
|
||||
strncpy (data + 40, fname, 16);
|
||||
DIAGNOSTIC_PUSH;
|
||||
/* GCC 8.1 warns about 80 equals destination size with
|
||||
-Wstringop-truncation:
|
||||
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85643
|
||||
*/
|
||||
#if GCC_VERSION == 8001
|
||||
DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION;
|
||||
#endif
|
||||
strncpy (data + 56, psargs, 80);
|
||||
DIAGNOSTIC_POP;
|
||||
return elfcore_write_note (abfd, buf, bufsiz, "CORE", note_type,
|
||||
&data, sizeof (data));
|
||||
}
|
||||
|
@ -640,7 +640,16 @@ _bfd_aarch64_elf_write_core_note (bfd *abfd, char *buf, int *bufsiz, int note_ty
|
||||
va_start (ap, note_type);
|
||||
memset (data, 0, sizeof (data));
|
||||
strncpy (data + 40, va_arg (ap, const char *), 16);
|
||||
DIAGNOSTIC_PUSH;
|
||||
/* GCC 8.1 warns about 80 equals destination size with
|
||||
-Wstringop-truncation:
|
||||
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85643
|
||||
*/
|
||||
#if GCC_VERSION == 8001
|
||||
DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION;
|
||||
#endif
|
||||
strncpy (data + 56, va_arg (ap, const char *), 80);
|
||||
DIAGNOSTIC_POP;
|
||||
va_end (ap);
|
||||
|
||||
return elfcore_write_note (abfd, buf, bufsiz, "CORE",
|
||||
|
@ -1,3 +1,8 @@
|
||||
2018-06-04 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* diagnostics.h (DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION): Always
|
||||
define for GCC.
|
||||
|
||||
2018-06-04 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* diagnostics.h (DIAGNOSTIC_STRINGIFY_1): New.
|
||||
|
@ -48,10 +48,8 @@
|
||||
# define DIAGNOSTIC_IGNORE_UNUSED_FUNCTION \
|
||||
DIAGNOSTIC_IGNORE ("-Wunused-function")
|
||||
|
||||
# if __GNUC__ == 8 && __GNUC_MINOR__ < 2
|
||||
# define DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION \
|
||||
# define DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION \
|
||||
DIAGNOSTIC_IGNORE ("-Wstringop-truncation")
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef DIAGNOSTIC_IGNORE_SELF_MOVE
|
||||
|
Loading…
Reference in New Issue
Block a user