/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom2" } */
/* LLVM LOCAL test not applicable */
/* { dg-require-fdump "" } */
int link_error(void);
int s(void);

int t(int i)
{
  _Bool g = i == 4;
 int h = g;
 _Bool j = h;
 int k = j;
 _Bool l = k == 0;
 _Bool o = !l;
 int m = o;

 if (m)
  if (i != 4)
   return link_error();
 return 0;
}

/* There should be no link_error calls, if there is any, the
   optimization has failed */
/* { dg-final { scan-tree-dump-times "link_error" 0 "dom2"} } */
/* { dg-final { cleanup-tree-dump "dom2" } } */
