view gcc/testsuite/g++.dg/torture/pr60438-1.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
line wrap: on
line source

// { dg-do compile }
// { dg-options "-fomit-frame-pointer" }

struct A { int a; };
struct B { A foo (); };
struct C { B *foo (); };
int foo (struct C *, float);
void bar (struct C *);
void baz (struct A *);
int a, b, c;

int
foo (struct C *y, float x)
{
  struct A d;
  if (c)
    bar (y);
  else
    {
      C g;
      g.foo ()->foo ();
      a = b;
      d.a = (int) (b * x);
    }
  baz (&d);

  return 0;
}