// DR 2345 - Jumping across initializers in init-statements and conditions.
// { dg-do compile { target c++17 } }
int
fn ()
{
  goto X;
  if (int i = 42; i == 42)
    {
X: // { dg-error "jump to label" }
      return i;
    }
  return -1;
}
// DR 2345 - Jumping across initializers in init-statements and conditions.
// { dg-do compile { target c++17 } }
int
fn ()
{
  goto X;
  if (int i = 42; i == 42)
    {
X: // { dg-error "jump to label" }
      return i;
    }
  return -1;
}