https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81275

--- Comment #5 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
(In reply to Jakub Jelinek from comment #4)
> Marek, could we reuse the fallthrough warning infrastructure for this to
> determine whether there is a possible fallthrough or not?
> Though, trying:
> int
> foo (int a, int b, int c)
> {
>   switch (c)
>     {
>     case 5:
>       switch (a)
>       {
>       case 0:
>         switch (b)
>           {
>           default:
>             return 0;
>           }
>         break;
> #ifdef FT
>       case 7:
>         break;
> #endif
>       default:
>         return 0;
>       }
>     case 6:
>       return 7;
>     }
>   return 8;
> }
> 
> we don't warn about the fallthrough from case 5 to case 6 no matter if FT is
> defined (in that case there is obvious fallthrough, say for foo (7, 0, 5), or
> when FT is not defined (then there isn't, but gimple_seq_may_fallthru
> doesn't know that).  

Unfortunately, not yet, because -Wimplicit-fallthrough doesn't scan nested
switches (PR79153).

Reply via email to