1 /* PR middle-end/59138 */
2 /* Testcase by John Regehr <regehr@cs.utah.edu> */
3 
4 extern void abort (void);
5 
6 #pragma pack(1)
7 
8 struct S0 {
9   int f0;
10   int f1;
11   int f2;
12   short f3;
13 };
14 
15 short a = 1;
16 
17 struct S0 b = { 1 }, c, d, e;
18 
fn1()19 struct S0 fn1() { return c; }
20 
fn2(void)21 void fn2 (void)
22 {
23   b = fn1 ();
24   a = 0;
25   d = e;
26 }
27 
main(void)28 int main (void)
29 {
30   fn2 ();
31   if (a != 0)
32     abort ();
33   return 0;
34 }
35