blob: 12f0633020e8186cef21735db103e58612db2458 [file] [log] [blame]
/* { dg-do run } */
/* { dg-options "-O2 --param global-var-threshold=1" } */
extern void abort(void);
struct Bar { int p; };
struct Foo { struct Bar *p; };
struct Bar p0 = { 0 };
struct Bar p1 = { 1 };
void bar(struct Foo *f)
{
f->p = &p0;
}
int foo(struct Foo *f)
{
f->p->p = 1;
bar(f);
return f->p->p;
}
int main()
{
struct Foo f;
f.p = &p1;
if (foo(&f) != 0)
abort ();
return 0;
}