This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/16809] [3.5 regression] ICE in gimplify_expr with initializer of arrays and pointers
- From: "jsm at polyomino dot org dot uk" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 28 Jul 2004 22:17:37 -0000
- Subject: [Bug middle-end/16809] [3.5 regression] ICE in gimplify_expr with initializer of arrays and pointers
- References: <20040728213311.16809.bangerth@dealii.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From jsm at polyomino dot org dot uk 2004-07-28 22:17 -------
Subject: Re: [3.5 regression] ICE in gimplify_expr
with initializer of arrays and pointers
On Wed, 28 Jul 2004, bangerth at ices dot utexas dot edu wrote:
> > The compound literal has automatic storage duration associated with the
> > enclosing block. The code looks perfectly reasonable to me.
>
> Ah, speaking of the devil :-))
>
> Thanks, Joseph, for clarifying the matter!
I should perhaps note that I don't know what state the implementation of
compound literals as an extension for C++ is in, but clearly the semantics
used in C++ ought to follow those in C99 as closely as possible (modulo
C++ differences such as allowing non-constants in those of static storage
duration), meaning this case should work just as it does in C. The C++
front end may need changing to use COMPOUND_LITERAL_EXPRs like C does
(rather than just CONSTRUCTORs).
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16809