/* PR middle-end/92373 - ICE in -Warray-bounds on access to member array | |
in an initialized char buffer | |
{ dg-do compile } | |
{ dg-options "-O2 -Wall" } */ | |
void sink (void*); | |
struct S | |
{ | |
char data[1]; | |
}; | |
char a[6] = { }; | |
int f (void) | |
{ | |
struct S *p = (struct S*)a; | |
return p->data[4]; | |
} | |
void g (void) | |
{ | |
char b[6] = { }; | |
struct S *p = (struct S*)b; | |
p->data[4] = 0; | |
sink (p); | |
} |