1 /* { dg-do compile } */ 2 /* { dg-options "-ftree-loop-distribution -funswitch-loops" } */ 3 4 struct test_struct { 5 int a, b[10], c[10], d[10]; 6 }; 7 8 extern struct test_struct* new_struct; 9 testfunc(struct test_struct * old_struct)10void testfunc(struct test_struct* old_struct) 11 { 12 int i; 13 for (i = 0; i < 10; ++i) 14 { 15 new_struct->b[i] = old_struct ? old_struct->b[i] : -1; 16 new_struct->c[i] = old_struct ? old_struct->c[i] : 0; 17 new_struct->d[i] = old_struct ? old_struct->d[i] : 0; 18 } 19 if (old_struct) 20 old_struct->a++; 21 } 22