1 /* { dg-do compile } */ 2 /* { dg-options "-O2 -g" } */ 3 4 struct { 5 char uuid[16]; 6 } c; 7 struct { 8 int s_uuid[6]; 9 } a, b; 10 int bar (void); get_label_uuid(char * p1)11static int get_label_uuid(char *p1) { 12 __builtin_memcpy(p1, a.s_uuid, sizeof(a)); 13 if (bar()) 14 __builtin_memcpy(p1, b.s_uuid, sizeof(b)); 15 return 0; 16 } uuidcache_addentry(char * p1)17void uuidcache_addentry(char *p1) { __builtin_memcpy(&c, p1, sizeof(c)); } uuidcache_init()18void uuidcache_init() { 19 char d[sizeof(a) + sizeof(c)]; 20 get_label_uuid(d); 21 uuidcache_addentry(d); 22 } 23