1// { dg-do compile }
2// { dg-options "-fomit-frame-pointer" }
3
4struct A { int a; };
5struct B { A foo (); };
6struct C { B *foo (); };
7int foo (struct C *, float);
8void bar (struct C *);
9void baz (struct A *);
10int a, b, c;
11
12int
13foo (struct C *y, float x)
14{
15  struct A d;
16  if (c)
17    bar (y);
18  else
19    {
20      C g;
21      g.foo ()->foo ();
22      a = b;
23      d.a = (int) (b * x);
24    }
25  baz (&d);
26}
27