From 9b3d2ec0855e0ddea3332b072ac1fee39b8fd71f Mon Sep 17 00:00:00 2001 From: Patrick McDermott Date: Sun, 07 Apr 2019 19:51:05 -0400 Subject: patches: Add upstream commits up to 9c98635 --- (limited to 'patches/0010-maint-avoid-warnings-from-GCC8.patch') diff --git a/patches/0010-maint-avoid-warnings-from-GCC8.patch b/patches/0010-maint-avoid-warnings-from-GCC8.patch new file mode 100644 index 0000000..e1f9e4e --- /dev/null +++ b/patches/0010-maint-avoid-warnings-from-GCC8.patch @@ -0,0 +1,92 @@ +From ae81be0024ea4eaf139b7ba57e9a8ce9e4a163ec Mon Sep 17 00:00:00 2001 +From: Jim Meyering +Date: Fri, 6 Apr 2018 17:17:11 -0700 +Subject: [PATCH 10/17] maint: avoid warnings from GCC8 + +Hi Andreas, + +I configured with --enable-gcc-warnings and bleeding-edge gcc +(version 8.0.1 20180406) and hit some warning-escalated-to-errors. +This fixes them: + +>From a71ddb200dbe7ac0f9258796b5a51979b2740e88 Mon Sep 17 00:00:00 2001 +From: Jim Meyering +Date: Fri, 6 Apr 2018 16:47:00 -0700 +Subject: [PATCH] maint: avoid warnings from GCC8 + +* src/common.h (FALLTHROUGH): Define. +* src/patch.c (abort_hunk_context): Use FALLTHROUGH macro in place of +a comment. This avoids a warning from -Wimplicit-fallthrough=. +* src/pch.c (do_ed_script): Add otherwise unnecessary initialization +to avoid warning from -Wmaybe-uninitialized. +(another_hunk): Use FALLTHROUGH macro here, too, twice. +--- + src/common.h | 8 ++++++++ + src/patch.c | 2 +- + src/pch.c | 7 +++---- + 3 files changed, 12 insertions(+), 5 deletions(-) + +diff --git a/src/common.h b/src/common.h +index ec50b40..904a3f8 100644 +--- a/src/common.h ++++ b/src/common.h +@@ -218,3 +218,11 @@ bool merge_hunk (int hunk, struct outstate *, lin where, bool *); + #else + # define merge_hunk(hunk, outstate, where, somefailed) false + #endif ++ ++#ifndef FALLTHROUGH ++# if __GNUC__ < 7 ++# define FALLTHROUGH ((void) 0) ++# else ++# define FALLTHROUGH __attribute__ ((__fallthrough__)) ++# endif ++#endif +diff --git a/src/patch.c b/src/patch.c +index 0fe6d72..1ae91d9 100644 +--- a/src/patch.c ++++ b/src/patch.c +@@ -1381,7 +1381,7 @@ abort_hunk_context (bool header, bool reverse) + break; + case ' ': case '-': case '+': case '!': + fprintf (rejfp, "%c ", pch_char (i)); +- /* fall into */ ++ FALLTHROUGH; + case '\n': + pch_write_line (i, rejfp); + break; +diff --git a/src/pch.c b/src/pch.c +index 1055542..cda3dfa 100644 +--- a/src/pch.c ++++ b/src/pch.c +@@ -1735,7 +1735,7 @@ another_hunk (enum diff difftype, bool rev) + break; + case '=': + ch = ' '; +- /* FALL THROUGH */ ++ FALLTHROUGH; + case ' ': + if (fillsrc > p_ptrn_lines) { + free(s); +@@ -1756,7 +1756,7 @@ another_hunk (enum diff difftype, bool rev) + p_end = fillsrc-1; + return -1; + } +- /* FALL THROUGH */ ++ FALLTHROUGH; + case '+': + if (filldst > p_end) { + free(s); +@@ -2394,8 +2394,7 @@ do_ed_script (char const *inname, char const *outname, + size_t chars_read; + FILE *tmpfp = 0; + char const *tmpname; +- int tmpfd; +- pid_t pid; ++ int tmpfd = -1; /* placate gcc's -Wmaybe-uninitialized */ + int exclusive = *outname_needs_removal ? 0 : O_EXCL; + char const **ed_argv; + int stdin_dup, status; +-- +2.11.0 + -- cgit v0.9.1