summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/debug/pr44182.C
blob: 3e062a3fe8477d997a7fb80d6fad94c6391fb280 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// PR tree-optimization/44182
// { dg-do compile }
// { dg-options "-fcompare-debug" }

struct S
{
  int i;
  S ();
  ~S ();
  void f1 ();
  void f2 (S s)
  {
    f3 (s.i);
    for (int j = 0; j < s.i; j++) f1 ();
  }
  void f3 (int j)
  {
    if (j > i) f1 ();
  }
};

void
f (S *x)
{
  x->f2 (S ());
}