https://gcc.gnu.org/bugzilla/show_bug.cgi?id=49859
--- Comment #9 from Marek Polacek <mpolacek at gcc dot gnu.org> --- Author: mpolacek Date: Mon May 23 15:37:09 2016 New Revision: 236597 URL: https://gcc.gnu.org/viewcvs?rev=236597&root=gcc&view=rev Log: 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. Added: trunk/gcc/testsuite/c-c++-common/Wswitch-unreachable-1.c trunk/gcc/testsuite/gcc.dg/Wswitch-unreachable-1.c Modified: trunk/gcc/ChangeLog trunk/gcc/common.opt trunk/gcc/doc/invoke.texi trunk/gcc/gimplify.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/c-c++-common/goacc/sb-2.c trunk/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-switch.C trunk/gcc/testsuite/g++.dg/gomp/block-10.C trunk/gcc/testsuite/g++.dg/gomp/block-9.C trunk/gcc/testsuite/g++.dg/gomp/target-1.C trunk/gcc/testsuite/g++.dg/gomp/target-2.C trunk/gcc/testsuite/g++.dg/gomp/taskgroup-1.C trunk/gcc/testsuite/g++.dg/gomp/teams-1.C trunk/gcc/testsuite/g++.dg/overload/error3.C trunk/gcc/testsuite/g++.dg/tm/jump1.C trunk/gcc/testsuite/g++.dg/torture/pr40335.C trunk/gcc/testsuite/gcc.dg/Wjump-misses-init-1.c trunk/gcc/testsuite/gcc.dg/c99-vla-jump-5.c trunk/gcc/testsuite/gcc.dg/gomp/block-10.c trunk/gcc/testsuite/gcc.dg/gomp/block-9.c trunk/gcc/testsuite/gcc.dg/gomp/target-1.c trunk/gcc/testsuite/gcc.dg/gomp/target-2.c trunk/gcc/testsuite/gcc.dg/gomp/taskgroup-1.c trunk/gcc/testsuite/gcc.dg/gomp/teams-1.c trunk/gcc/testsuite/gcc.dg/nested-func-1.c trunk/gcc/testsuite/gcc.dg/pr67784-4.c trunk/gcc/testsuite/gcc.dg/switch-warn-1.c