1/* PR rtl-optimization/58365 */
2
3extern void abort (void);
4
5struct S
6{
7  volatile int a;
8  int b, c, d, e;
9} f;
10static struct S g, h;
11int i = 1;
12
13char
14foo (void)
15{
16  return i;
17}
18
19static struct S
20bar (void)
21{
22  if (foo ())
23    return f;
24  return g;
25}
26
27int
28main ()
29{
30  h = bar ();
31  f.b = 1;
32  if (h.b != 0)
33    abort ();
34  return 0;
35}
36