blob: 1d43d0d754dadb0fa915e3d0e194f5dbff272d3b [file] [log] [blame]
/* { dg-do run }
* { dg-options "-std=c23 -O2" }
*/
/* Here we check that structs with flexible array
* members can alias a compatible redefinition. */
struct bar { int x; int f[]; };
int test_bar1(struct bar* a, void* b)
{
a->x = 1;
struct bar { int x; int f[]; }* p = b;
struct bar* q = a;
p->x = 2;
return a->x;
}
int main()
{
struct bar z;
if (2 != test_bar1(&z, &z))
__builtin_abort();
return 0;
}