1 /* { dg-do run } */ 2 /* { dg-options "-O3 -fno-strict-aliasing" } */ 3 4 extern void exit (int); 5 extern void abort (void); 6 7 struct foos { int l; }; 8 int foo; 9 static struct foos *getfoo(void); main(void)10int main (void) 11 { 12 struct foos *f = getfoo(); 13 f->l = 1; 14 foo = 2; 15 if (f->l == 1) 16 abort(); 17 exit(0); 18 } getfoo(void)19static struct foos *getfoo(void) 20 { return (struct foos *)&foo; } 21