diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2015-09-16 14:40:53 -0700 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2015-09-16 15:07:23 -0700 |
commit | 8865587c55f251ac624e6730505de66d15b28562 (patch) | |
tree | c9cb82c4a99d98df45ec5531c9d97338792c2680 /lib-src | |
parent | 82198ed57e3059f0526658608fd22b5fc87ab734 (diff) | |
download | emacs-8865587c55f251ac624e6730505de66d15b28562.tar.gz emacs-8865587c55f251ac624e6730505de66d15b28562.tar.bz2 emacs-8865587c55f251ac624e6730505de66d15b28562.zip |
Add -Wswitch to --enable-gcc-warnings
Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
* configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
* lib-src/etags.c (main, consider_token, C_entries):
* src/coding.c (encode_invocation_designation):
* src/data.c (Ftype_of):
* src/eval.c (Fdefvaralias, default_toplevel_binding)
(Fbacktrace__locals, mark_specpdl):
* src/lisp.h (record_xmalloc):
* src/syntax.c (scan_lists, scan_sexps_forward):
* src/window.c (window_relative_x_coord):
* src/xdisp.c (push_it, pop_it):
* src/xterm.c (xg_scroll_callback, x_check_fullscreen):
Error out or do nothing (as appropriate) if a switch statement
with an enum value does not cover all of the enum.
* src/dispextern.h (struct iterator_stack_entry.u.comp):
Remove unused member discovered by using -Wswitch.
* src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
* src/vm-limit.c (check_memory_limits):
Simplify warning-diagnostic computation by using a table.
Diffstat (limited to 'lib-src')
-rw-r--r-- | lib-src/etags.c | 42 |
1 files changed, 40 insertions, 2 deletions
diff --git a/lib-src/etags.c b/lib-src/etags.c index 7baff8cbfe8..791722d4b66 100644 --- a/lib-src/etags.c +++ b/lib-src/etags.c @@ -1268,6 +1268,8 @@ main (int argc, char **argv) this_file = argbuffer[i].what; process_file (stdin, this_file, lang); break; + default: + error ("internal error: arg_type"); } } @@ -2754,6 +2756,9 @@ consider_token (char *str, int len, int c, int *c_extp, case st_C_struct: case st_C_enum: typdef = ttypeseen; + break; + default: + break; } break; case ttypeseen: @@ -2770,8 +2775,11 @@ consider_token (char *str, int len, int c, int *c_extp, case st_C_struct: case st_C_enum: return false; + default: + return true; } - return true; + default: + break; } switch (toktype) @@ -2804,6 +2812,8 @@ consider_token (char *str, int len, int c, int *c_extp, fvdef = fvnone; } return false; + default: + break; } if (structdef == skeyseen) @@ -2827,6 +2837,8 @@ consider_token (char *str, int len, int c, int *c_extp, case st_C_objimpl: objdef = oimplementation; return false; + default: + break; } break; case oimplementation: @@ -2888,6 +2900,8 @@ consider_token (char *str, int len, int c, int *c_extp, objdef = onone; } return false; + default: + break; } /* A function, variable or enum constant? */ @@ -2943,6 +2957,8 @@ consider_token (char *str, int len, int c, int *c_extp, return false; } break; + default: + break; } /* FALLTHRU */ case fvnameseen: @@ -2959,8 +2975,12 @@ consider_token (char *str, int len, int c, int *c_extp, fvdef = fvnameseen; /* function or variable */ *is_func_or_var = true; return true; + default: + break; } break; + default: + break; } return false; @@ -3470,6 +3490,8 @@ C_entries (int c_ext, FILE *inf) fvdef = fignore; } break; + default: + break; } if (structdef == stagseen && !cjava) { @@ -3480,6 +3502,8 @@ C_entries (int c_ext, FILE *inf) case dsharpseen: savetoken = token; break; + default: + break; } if (!yacc_rules || lp == newlb.buffer + 1) { @@ -3508,7 +3532,7 @@ C_entries (int c_ext, FILE *inf) break; switch (objdef) { - case otagseen: + case otagseen: objdef = oignore; make_C_tag (true); /* an Objective C class */ break; @@ -3522,6 +3546,8 @@ C_entries (int c_ext, FILE *inf) strcpy (token_name.buffer + toklen, ":"); } break; + default: + break; } if (structdef == stagseen) { @@ -3599,6 +3625,8 @@ C_entries (int c_ext, FILE *inf) make_C_tag (true); /* an Objective C method */ objdef = oinbody; break; + default: + break; } switch (fvdef) { @@ -3672,6 +3700,8 @@ C_entries (int c_ext, FILE *inf) fvdef = fvnone; } break; + default: + break; } break; case '(': @@ -3705,6 +3735,8 @@ C_entries (int c_ext, FILE *inf) case flistseen: fvdef = finlist; break; + default: + break; } parlev++; break; @@ -3730,6 +3762,8 @@ C_entries (int c_ext, FILE *inf) case finlist: fvdef = flistseen; break; + default: + break; } if (!instruct && (typdef == tend @@ -3801,6 +3835,8 @@ C_entries (int c_ext, FILE *inf) bracelev = -1; } break; + default: + break; } switch (structdef) { @@ -3814,6 +3850,8 @@ C_entries (int c_ext, FILE *inf) structdef = snone; make_C_tag (false); /* a struct or enum */ break; + default: + break; } bracelev += 1; break; |