From be3e27bb5554e45d54d7cdc74353dda246239475 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Wed, 25 Jul 2018 11:40:48 +0930 Subject: [PATCH] Suppress string diagnostics for pre-release GCC Extends commit 898ade12ee8 to cover other targets. * elf32-arm.c (elf32_arm_nabi_write_core_note): Disable -Wstringop-truncation warning for gcc-8.0 too. * elf32-ppc.c (ppc_elf_write_core_note): Likewise. * elf64-ppc.c (ppc64_elf_write_core_note): Likewise. * elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewise. * elf32-s390.c (elf_s390_write_core_note): Comment fix. * elf64-s390.c (elf_s390_write_core_note): Likewise. --- bfd/ChangeLog | 10 ++++++++++ bfd/elf32-arm.c | 6 +++--- bfd/elf32-ppc.c | 6 +++--- bfd/elf32-s390.c | 2 +- bfd/elf64-ppc.c | 6 +++--- bfd/elf64-s390.c | 2 +- bfd/elfxx-aarch64.c | 6 +++--- 7 files changed, 24 insertions(+), 14 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index bdbb3ff4f47..8efa3870933 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,13 @@ +2018-07-25 Alan Modra + + * elf32-arm.c (elf32_arm_nabi_write_core_note): Disable + -Wstringop-truncation warning for gcc-8.0 too. + * elf32-ppc.c (ppc_elf_write_core_note): Likewise. + * elf64-ppc.c (ppc64_elf_write_core_note): Likewise. + * elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewise. + * elf32-s390.c (elf_s390_write_core_note): Comment fix. + * elf64-s390.c (elf_s390_write_core_note): Likewise. + 2018-07-24 Alan Modra PR 23430 diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c index c5077a53085..2c321bbcb65 100644 --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -2174,16 +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); -#if GCC_VERSION == 8001 +#if GCC_VERSION == 8000 || GCC_VERSION == 8001 DIAGNOSTIC_PUSH; - /* GCC 8.1 warns about 80 equals destination size with + /* GCC 8.0 and 8.1 warn about 80 equals destination size with -Wstringop-truncation: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85643 */ DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION; #endif strncpy (data + 44, va_arg (ap, const char *), 80); -#if GCC_VERSION == 8001 +#if GCC_VERSION == 8000 || GCC_VERSION == 8001 DIAGNOSTIC_POP; #endif va_end (ap); diff --git a/bfd/elf32-ppc.c b/bfd/elf32-ppc.c index 5e9251bdb9f..1ddfc6c1f40 100644 --- a/bfd/elf32-ppc.c +++ b/bfd/elf32-ppc.c @@ -2411,16 +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); -#if GCC_VERSION == 8001 +#if GCC_VERSION == 8000 || GCC_VERSION == 8001 DIAGNOSTIC_PUSH; - /* GCC 8.1 warns about 80 equals destination size with + /* GCC 8.0 and 8.1 warn about 80 equals destination size with -Wstringop-truncation: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85643 */ DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION; #endif strncpy (data + 48, va_arg (ap, const char *), 80); -#if GCC_VERSION == 8001 +#if GCC_VERSION == 8000 || GCC_VERSION == 8001 DIAGNOSTIC_POP; #endif va_end (ap); diff --git a/bfd/elf32-s390.c b/bfd/elf32-s390.c index c47bbabc2c5..448c64dcfce 100644 --- a/bfd/elf32-s390.c +++ b/bfd/elf32-s390.c @@ -3953,7 +3953,7 @@ elf_s390_write_core_note (bfd *abfd, char *buf, int *bufsiz, strncpy (data + 28, fname, 16); #if GCC_VERSION == 8000 || GCC_VERSION == 8001 DIAGNOSTIC_PUSH; - /* GCC 8.1 warns about 80 equals destination size with + /* GCC 8.0 and 8.1 warn about 80 equals destination size with -Wstringop-truncation: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85643 */ diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c index 45d81777eb7..6b293ce5fd7 100644 --- a/bfd/elf64-ppc.c +++ b/bfd/elf64-ppc.c @@ -3041,16 +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); -#if GCC_VERSION == 8001 +#if GCC_VERSION == 8000 || GCC_VERSION == 8001 DIAGNOSTIC_PUSH; - /* GCC 8.1 warns about 80 equals destination size with + /* GCC 8.0 and 8.1 warn about 80 equals destination size with -Wstringop-truncation: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85643 */ DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION; #endif strncpy (data + 56, va_arg (ap, const char *), 80); -#if GCC_VERSION == 8001 +#if GCC_VERSION == 8000 || GCC_VERSION == 8001 DIAGNOSTIC_POP; #endif va_end (ap); diff --git a/bfd/elf64-s390.c b/bfd/elf64-s390.c index 16a62a3d7c8..91b76bcc8a9 100644 --- a/bfd/elf64-s390.c +++ b/bfd/elf64-s390.c @@ -3787,7 +3787,7 @@ elf_s390_write_core_note (bfd *abfd, char *buf, int *bufsiz, strncpy (data + 40, fname, 16); #if GCC_VERSION == 8000 || GCC_VERSION == 8001 DIAGNOSTIC_PUSH; - /* GCC 8.1 warns about 80 equals destination size with + /* GCC 8.0 and 8.1 warn about 80 equals destination size with -Wstringop-truncation: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85643 */ diff --git a/bfd/elfxx-aarch64.c b/bfd/elfxx-aarch64.c index af02f2e48e1..b8a541a9dda 100644 --- a/bfd/elfxx-aarch64.c +++ b/bfd/elfxx-aarch64.c @@ -640,16 +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); -#if GCC_VERSION == 8001 +#if GCC_VERSION == 8000 || GCC_VERSION == 8001 DIAGNOSTIC_PUSH; - /* GCC 8.1 warns about 80 equals destination size with + /* GCC 8.0 and 8.1 warn about 80 equals destination size with -Wstringop-truncation: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85643 */ DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION; #endif strncpy (data + 56, va_arg (ap, const char *), 80); -#if GCC_VERSION == 8001 +#if GCC_VERSION == 8000 || GCC_VERSION == 8001 DIAGNOSTIC_POP; #endif va_end (ap); -- 2.30.2