From d6961341dd0ef37d0c292d25f7e428a42e22b0c0 Mon Sep 17 00:00:00 2001 From: Andrew Cagney Date: Sat, 23 Mar 2002 16:33:44 +0000 Subject: [multiple changes] 2002-03-23 Andrew Cagney * doc/invoke.texi (Option Summary): Mention -Wswitch-default. (Warning Options): Document -Wswitch-default. * toplev.c (W_options): Add -Wswitch-default. Update comment on -Wswitch. (warn_switch_default): Define variable. (warn_switch): Update comment. * flags.h (warn_switch_default): Declare variable. (warn_switch): Update comment. * stmt.c (expand_end_case): Check for and, when warn_switch_no_default, warn of a missing default case. Index: f/ChangeLog Sat Mar 23 11:18:17 2002 Andrew Cagney * invoke.texi (Warning Options): Mention -Wswitch-default. Index: testsuite/ChangeLog 2002-03-23 Andrew Cagney * gcc.dg/Wswitch-default.c: New test. From-SVN: r51238 --- gcc/toplev.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'gcc/toplev.c') diff --git a/gcc/toplev.c b/gcc/toplev.c index ca26e7f..d09f58c 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -1395,10 +1395,15 @@ int warn_uninitialized; int warn_shadow; -/* Warn if a switch on an enum fails to have a case for every enum value. */ +/* Warn if a switch on an enum, that does not have a default case, + fails to have a case for every enum value. */ int warn_switch; +/* Warn if a switch does not have a default case. */ + +int warn_switch_default; + /* Nonzero means warn about function definitions that default the return type or that use a null return and have a return-type other than void. */ @@ -1468,7 +1473,9 @@ static const lang_independent_options W_options[] = {"shadow", &warn_shadow, 1, N_("Warn when one local variable shadows another") }, {"switch", &warn_switch, 1, - N_("Warn about enumerated switches missing a specific case") }, + N_("Warn about enumerated switches, with no default, missing a case") }, + {"switch-default", &warn_switch_default, 1, + N_("Warn about enumerated switches missing a default case") }, {"aggregate-return", &warn_aggregate_return, 1, N_("Warn about returning structures, unions or arrays") }, {"cast-align", &warn_cast_align, 1, -- cgit v1.1