aboutsummaryrefslogtreecommitdiff
path: root/gcc/common.opt
diff options
context:
space:
mode:
authorMarek Polacek <mpolacek@gcc.gnu.org>2016-05-23 15:37:09 +0000
committerMarek Polacek <mpolacek@gcc.gnu.org>2016-05-23 15:37:09 +0000
commita7dc5980e91d758905750a5c0a533f689eca355e (patch)
treed51176bb0505d6371f073a25030266ac0a853be1 /gcc/common.opt
parent7e5a3c96db2383a41587d6525b4ac9ea1fafe091 (diff)
downloadgcc-a7dc5980e91d758905750a5c0a533f689eca355e.zip
gcc-a7dc5980e91d758905750a5c0a533f689eca355e.tar.gz
gcc-a7dc5980e91d758905750a5c0a533f689eca355e.tar.bz2
re PR c/49859 (gcc could warn about statements between "switch" and first "case")
PR c/49859 * common.opt (Wswitch-unreachable): New option. * doc/invoke.texi: Document -Wswitch-unreachable. * gimplify.c (gimplify_switch_expr): Implement the -Wswitch-unreachable warning. * c-c++-common/Wswitch-unreachable-1.c: New test. * gcc.dg/Wswitch-unreachable-1.c: New test. * c-c++-common/goacc/sb-2.c (void foo): Add dg-warning. * g++.dg/cpp0x/lambda/lambda-switch.C (main): Likewise. * g++.dg/gomp/block-10.C: Likewise. * gcc.dg/gomp/block-10.c: Likewise. * g++.dg/gomp/block-9.C: Likewise. * gcc.dg/gomp/block-9.c: Likewise. * g++.dg/gomp/target-1.C: Likewise. * g++.dg/gomp/target-2.C: Likewise. * gcc.dg/gomp/target-1.c: Likewise. * gcc.dg/gomp/target-2.c: Likewise. * g++.dg/gomp/taskgroup-1.C: Likewise. * gcc.dg/gomp/taskgroup-1.c: Likewise. * gcc.dg/gomp/teams-1.c: Likewise. * g++.dg/gomp/teams-1.C: Likewise. * g++.dg/overload/error3.C: Likewise. * g++.dg/tm/jump1.C: Likewise. * g++.dg/torture/pr40335.C: Likewise. * gcc.dg/c99-vla-jump-5.c: Likewise. * gcc.dg/switch-warn-1.c: Likewise. * gcc.dg/Wjump-misses-init-1.c: Use -Wno-switch-unreachable. * gcc.dg/nested-func-1.c: Likewise. * gcc.dg/pr67784-4.c: Likewise. From-SVN: r236597
Diffstat (limited to 'gcc/common.opt')
-rw-r--r--gcc/common.opt5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/common.opt b/gcc/common.opt
index 682cb41..fccd4b5 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -707,6 +707,11 @@ Wsuggest-final-methods
Common Var(warn_suggest_final_methods) Warning
Warn about C++ virtual methods where adding final keyword would improve code quality.
+Wswitch-unreachable
+Common Var(warn_switch_unreachable) Warning Init(1)
+Warn about statements between switch's controlling expression and the first
+case.
+
Wsystem-headers
Common Var(warn_system_headers) Warning
Do not suppress warnings from system headers.