diff options
| author | Paul Eggert <eggert@cs.ucla.edu> | 2017-05-16 10:24:19 -0700 |
|---|---|---|
| committer | Paul Eggert <eggert@cs.ucla.edu> | 2017-05-16 10:27:41 -0700 |
| commit | 2e1bebe279b7108f74c3a1e7e30e8a43c2cfa31f (patch) | |
| tree | 869b2d36a6a07dca857254202d620358c004489f /src/regex.c | |
| parent | 138c8256f41f242341c7d146c99f4e6fa267a638 (diff) | |
| download | emacs-2e1bebe279b7108f74c3a1e7e30e8a43c2cfa31f.tar.gz | |
Merge with gnulib, pacifying GCC 7
This incorporates:
2017-05-16 manywarnings: update for GCC 7
2017-05-15 sys_select: Avoid "was expanded before it was required"
* configure.ac (nw): Suppress GCC 7’s new -Wduplicated-branches and
-Wformat-overflow=2 options, due to too many false alarms.
* doc/misc/texinfo.tex, lib/strftime.c, m4/manywarnings.m4:
Copy from gnulib.
* m4/gnulib-comp.m4: Regenerate.
* src/coding.c (decode_coding_iso_2022):
Fix bug uncovered by -Wimplicit-fallthrough.
* src/conf_post.h (FALLTHROUGH): New macro.
Use it to mark all switch cases that fall through.
* src/editfns.c (styled_format): Use !, not ~, on bool.
* src/gtkutil.c (xg_check_special_colors):
When using sprintf, don’t trust Gtk to output colors in [0, 1] range.
(xg_update_scrollbar_pos): Avoid use of possibly-uninitialized bool;
this bug was actually caught by Clang.
* src/search.c (boyer_moore):
Tell GCC that CHAR_BASE, if nonzero, must be a non-ASCII character.
* src/xterm.c (x_draw_glyphless_glyph_string_foreground):
Tell GCC that glyph->u.glyphless.ch must be a character.
Diffstat (limited to 'src/regex.c')
| -rw-r--r-- | src/regex.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/regex.c b/src/regex.c index 8e38a920cdb..ed848902086 100644 --- a/src/regex.c +++ b/src/regex.c @@ -2636,6 +2636,7 @@ regex_compile (const_re_char *pattern, size_t size, if ((syntax & RE_BK_PLUS_QM) || (syntax & RE_LIMITED_OPS)) goto normal_char; + FALLTHROUGH; handle_plus: case '*': /* If there is no previous pattern... */ @@ -3086,6 +3087,7 @@ regex_compile (const_re_char *pattern, size_t size, with non-0. */ if (regnum == 0) FREE_STACK_RETURN (REG_BADPAT); + FALLTHROUGH; case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': regnum = 10*regnum + (c - '0'); break; @@ -3905,8 +3907,7 @@ analyze_first (const_re_char *p, const_re_char *pend, char *fastmap, j < (1 << BYTEWIDTH); j++) fastmap[j] = 1; } - - /* Fallthrough */ + FALLTHROUGH; case charset: if (!fastmap) break; not = (re_opcode_t) *(p - 1) == charset_not; @@ -6182,8 +6183,7 @@ re_match_2_internal (struct re_pattern_buffer *bufp, const_re_char *string1, case on_failure_jump_nastyloop: assert ((re_opcode_t)pat[-2] == no_op); PUSH_FAILURE_POINT (pat - 2, str); - /* Fallthrough */ - + FALLTHROUGH; case on_failure_jump_loop: case on_failure_jump: case succeed_n: |
