(root)/
gcc-13.2.0/
gcc/
testsuite/
g++.dg/
opt/
pr95080.C
// PR debug/95080
// { dg-do compile }
// { dg-options "-Og -fcse-follow-jumps -fnon-call-exceptions -fcompare-debug" }

char *a;

void baz ();

static inline bool
bar ()
{
  int j = a[0] - 1;
  switch (j)
    {
    case 0:
    case 2:
      return true;
    default:
      return false;
    }
}

static inline bool
foo ()
{
  if (bar ())
    baz ();
  return 0;
}

struct S
{
  int h;
   ~S ();
};

S::~S ()
{
  if (a[0] == 0)
    foo () != h;
}