1 /* PR tree-optimization/86844 */ 2 3 __attribute__((noipa)) void foo(int * p)4foo (int *p) 5 { 6 *p = 0; 7 *((char *)p + 3) = 1; 8 *((char *)p + 1) = 2; 9 *((char *)p + 2) = *((char *)p + 6); 10 } 11 12 int main()13main () 14 { 15 int a[2] = { -1, 0 }; 16 if (sizeof (int) != 4) 17 return 0; 18 ((char *)a)[6] = 3; 19 foo (a); 20 if (((char *)a)[0] != 0 || ((char *)a)[1] != 2 21 || ((char *)a)[2] != 3 || ((char *)a)[3] != 1) 22 __builtin_abort (); 23 return 0; 24 } 25