/* PR middle-end/59138 */ | |
/* Testcase by John Regehr <regehr@cs.utah.edu> */ | |
extern void abort (void); | |
#pragma pack(1) | |
struct S0 { | |
int f0; | |
int f1; | |
int f2; | |
short f3; | |
}; | |
short a = 1; | |
struct S0 b = { 1 }, c, d, e; | |
struct S0 fn1() { return c; } | |
void fn2 (void) | |
{ | |
b = fn1 (); | |
a = 0; | |
d = e; | |
} | |
int main (void) | |
{ | |
fn2 (); | |
if (a != 0) | |
abort (); | |
return 0; | |
} |