https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69258
Richard Biener changed:
What|Removed |Added
Status|UNCONFIRMED |RESOLVED
Resolution|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69258
--- Comment #5 from joseph at codesourcery dot com ---
I don't see a need for these different structures to be able to alias.
(Flexible array members do need to be able to alias static storage, in the
case where that static storage was declare
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69258
Richard Biener changed:
What|Removed |Added
CC||jsm28 at gcc dot gnu.org
--- Comment #4
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69258
--- Comment #3 from Richard Biener ---
Using
struct Xflex { int n; int a[]; };
doesn't fix it (as expected).
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69258
Richard Biener changed:
What|Removed |Added
Known to work||3.4.6
Known to fail|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69258
--- Comment #1 from Richard Biener ---
extern void abort (void);
struct Xflex { int n; int a[1]; };
struct Xspecific { int n; int a[7]; } x;
int __attribute__((noinline,noclone))
foo (struct Xflex *f)
{
x.a[6] = 1;
f->a[6] = 2;
return x.a