/* { dg-do run } */ | |
/* { dg-options "-O3 -fno-strict-aliasing" } */ | |
extern void exit (int); | |
extern void abort (void); | |
struct foos { int l; }; | |
int foo; | |
static struct foos *getfoo(void); | |
int main (void) | |
{ | |
struct foos *f = getfoo(); | |
f->l = 1; | |
foo = 2; | |
if (f->l == 1) | |
abort(); | |
exit(0); | |
} | |
static struct foos *getfoo(void) | |
{ return (struct foos *)&foo; } |