(root)/
gcc-13.2.0/
gcc/
testsuite/
c-c++-common/
Wimplicit-fallthrough-35.c
       1  /* PR c/79152 */
       2  /* { dg-do compile } */
       3  /* { dg-options "-Wimplicit-fallthrough" } */
       4  
       5  extern void foo (int);
       6  
       7  void
       8  f (int i)
       9  {
      10    switch (i)
      11      {
      12      case 0:
      13        foo (0);
      14  l1:
      15        foo (1);
      16      }
      17  
      18    switch (i)
      19      {
      20      case 0:
      21        foo (0);
      22  l2:;
      23      }
      24  
      25    switch (i)
      26      {
      27      case 0:
      28        foo (0);
      29  l3:
      30  l4:
      31        foo (1);
      32      }
      33  
      34    switch (i)
      35      {
      36      case 0:
      37        foo (0);
      38  l5:
      39  l6:;
      40      }
      41  
      42    switch (i)
      43      {
      44      case 0:
      45        foo (0); /* { dg-warning "statement may fall through" } */
      46  l7:
      47  l8:
      48      case 1:
      49        foo (1);
      50      }
      51  
      52    switch (i)
      53      {
      54      case 0:
      55        foo (0); /* { dg-warning "statement may fall through" } */
      56  l9:
      57      case 1:
      58  l10:
      59        foo (1);
      60      }
      61  }