[Bug c/64768] [4.8/4.9/5 Regression] internal compiler error: tree check:=?UTF-8?Q?=20expected=20tree=20that=20contains=20=E2=80=98decl=20with=20RTL=E2=80=99=20structure?=,=?UTF-8?Q?=20have=20=E2=80=98field=5Fdecl=E2=80=99=20in=20set=5Fdecl=5Frtl?=, at emit-rtl.c:1274
mpolacek at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sat Jan 24 18:18:00 GMT 2015
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64768
Marek Polacek <mpolacek at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords|ice-on-invalid-code |ice-on-valid-code,
| |rejects-valid
--- Comment #7 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
(In reply to joseph@codesourcery.com from comment #6)
> On Sat, 24 Jan 2015, mpolacek at gcc dot gnu.org wrote:
>
> > typedef int A[];
> > struct { int i; A a; } a;
>
> This is valid code for C99 and above / gnu89 (i.e., it's valid to use a
> typedef when declaring a flexible array member, whenever flexible array
> members are accepted).
Yeah, initially I had the invalid testcase as in #c0, only then I discovered
that we ICE even on a valid testcase with a typedef. Which means there are two
issues: a) we ICE, b) we don't accept a code where a flexible array member is a
typedef. I'm adjusting the keywords now.
More information about the Gcc-bugs
mailing list