1 /* { dg-do compile } */ 2 /* { dg-additional-options "-Wall" } */ 3 4 #define COUNT 32 5 6 typedef struct s1 { 7 unsigned char c; 8 } s1; 9 10 typedef struct s2 11 { 12 char pad; 13 s1 arr[COUNT]; 14 } s2; 15 16 typedef struct s3 { 17 s1 arr[COUNT]; 18 } s3; 19 20 s2 * get_s2(); 21 s3 * gActiveS3; foo()22void foo() 23 { 24 s3 * three = gActiveS3; 25 s2 * two = get_s2(); 26 27 for (int i = 0; i < COUNT; i++) 28 { 29 two->arr[i].c = three->arr[i].c; 30 } 31 } 32