// PR c++/77803
// { dg-do compile { target c++11 } }
// { dg-options "-Wimplicit-fallthrough" }
struct A {};
int a;
void
fn1 ()
{
  switch (0) {
  case 0:
  {
    A b;
    [[fallthrough]];
  }
  default:
    a = 0;
  }
}
void
fn2 ()
{
  switch (0) {
  case 0:
  {
    A b;
  } // { dg-warning "statement may fall through" }
  default:
    a = 0;
  }
}