S/390: Suppress string diagnostics for pre-release GCC
authorAndreas Krebbel <krebbel@linux.vnet.ibm.com>
Mon, 23 Jul 2018 08:29:37 +0000 (10:29 +0200)
committerAndreas Krebbel <krebbel@linux.ibm.com>
Mon, 23 Jul 2018 08:33:29 +0000 (10:33 +0200)
Building for S/390 currently fails when using a GCC 8.1 pre-release
version like 8.0.1 (as it is used by F28).  Fixed with the attached patch.

bfd/ChangeLog:

2018-07-23  Andreas Krebbel  <krebbel@linux.ibm.com>

* elf32-s390.c (elf_s390_write_core_note): Make GCC version 8.0 to
be covered by the check as well.
* elf64-s390.c (elf_s390_write_core_note): Likewise.

bfd/elf32-s390.c
bfd/elf64-s390.c

index 56008a13eb2aaf17927e6706126d0351f239b335..c47bbabc2c5b4cdb14747d3a2e0a23f3ec8a85ac 100644 (file)
@@ -3951,7 +3951,7 @@ elf_s390_write_core_note (bfd *abfd, char *buf, int *bufsiz,
        va_end (ap);
 
        strncpy (data + 28, fname, 16);
-#if GCC_VERSION == 8001
+#if GCC_VERSION == 8000 || GCC_VERSION == 8001
        DIAGNOSTIC_PUSH;
        /* GCC 8.1 warns about 80 equals destination size with
           -Wstringop-truncation:
@@ -3960,7 +3960,7 @@ elf_s390_write_core_note (bfd *abfd, char *buf, int *bufsiz,
        DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION;
 #endif
        strncpy (data + 44, psargs, 80);
-#if GCC_VERSION == 8001
+#if GCC_VERSION == 8000 || GCC_VERSION == 8001
        DIAGNOSTIC_POP;
 #endif
        return elfcore_write_note (abfd, buf, bufsiz, "CORE", note_type,
index 0a9bfe4d707cb5a458afebe739de2705b9f80cf1..16a62a3d7c8cb038a3e5e49c8ee1b70098af1702 100644 (file)
@@ -3785,7 +3785,7 @@ elf_s390_write_core_note (bfd *abfd, char *buf, int *bufsiz,
        va_end (ap);
 
        strncpy (data + 40, fname, 16);
-#if GCC_VERSION == 8001
+#if GCC_VERSION == 8000 || GCC_VERSION == 8001
        DIAGNOSTIC_PUSH;
        /* GCC 8.1 warns about 80 equals destination size with
           -Wstringop-truncation:
@@ -3794,7 +3794,7 @@ elf_s390_write_core_note (bfd *abfd, char *buf, int *bufsiz,
        DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION;
 #endif
        strncpy (data + 56, psargs, 80);
-#if GCC_VERSION == 8001
+#if GCC_VERSION == 8000 || GCC_VERSION == 8001
        DIAGNOSTIC_POP;
 #endif
        return elfcore_write_note (abfd, buf, bufsiz, "CORE", note_type,