public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "joseph at codesourcery dot com" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug c++/20103] [4.0/4.1 regression] ICE in create_tmp_var with C99 style struct initializer
Date: Sat, 05 Mar 2005 12:16:00 -0000	[thread overview]
Message-ID: <20050305121606.17484.qmail@sourceware.org> (raw)
In-Reply-To: <20050220111234.20103.falk@debian.org>


------- Additional Comments From joseph at codesourcery dot com  2005-03-05 12:15 -------
Subject: Re:  [4.0/4.1 regression] ICE in create_tmp_var with
 C99 style struct initializer

On Sat, 5 Mar 2005, giovannibajo at libero dot it wrote:

> It would probably also help to know why compound literals are lvalues in C99. 

A compound literal is an unnamed variable (with automatic storage duration 
associated with the enclosing block if within a function).  That is,

    (TYPE){ init }

effectively declares

    TYPE var = { init };

with the initialization done when (each time) the literal is executed and 
the literal then acting like var was named in the expression in which the 
literal occurs.  I'd guess this was the most natural model for permitting 
in C

    foo((int[]){ a, b, c, d, e });

with the array object living into and being usable in foo.



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20103


  parent reply	other threads:[~2005-03-05 12:16 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-02-20 17:37 [Bug c++/20103] New: [4.0 regression] ICE in create_tmp_var falk at debian dot org
2005-02-20 17:52 ` [Bug c++/20103] " falk at debian dot org
2005-02-20 19:02 ` pinskia at gcc dot gnu dot org
2005-02-20 19:25 ` pinskia at gcc dot gnu dot org
2005-02-20 19:27 ` pinskia at gcc dot gnu dot org
2005-02-21 21:49 ` pinskia at gcc dot gnu dot org
2005-02-23 11:10 ` [Bug c++/20103] [4.0 regression] ICE in create_tmp_var with C99 style struct initializer pinskia at gcc dot gnu dot org
2005-03-02 13:48 ` [Bug c++/20103] [4.0/4.1 " reichelt at gcc dot gnu dot org
2005-03-03  7:01 ` aoliva at gcc dot gnu dot org
2005-03-03  7:42 ` aoliva at redhat dot com
2005-03-04 23:22 ` aoliva at redhat dot com
2005-03-04 23:30 ` mark at codesourcery dot com
2005-03-05 11:41 ` giovannibajo at libero dot it
2005-03-05 12:16 ` joseph at codesourcery dot com [this message]
2005-03-05 13:37 ` aoliva at redhat dot com
2005-03-05 14:03 ` aoliva at redhat dot com
2005-03-05 21:47 ` mark at codesourcery dot com
2005-03-06  7:30 ` aoliva at redhat dot com
2005-03-06 18:02 ` mark at codesourcery dot com
2005-03-07  3:26 ` aoliva at redhat dot com
2005-03-07  4:44 ` mark at codesourcery dot com
2005-03-07  8:51 ` giovannibajo at libero dot it
2005-03-07 14:44 ` aoliva at redhat dot com
2005-03-07 16:05 ` mark at codesourcery dot com
2005-03-07 17:05 ` aoliva at redhat dot com
2005-03-07 18:05 ` mark at codesourcery dot com
2005-03-07 21:58 ` aoliva at redhat dot com
2005-03-07 22:39 ` mark at codesourcery dot com
2005-03-08  7:25 ` aoliva at redhat dot com
2005-03-08  7:46 ` mark at codesourcery dot com
2005-03-08 20:44 ` aoliva at redhat dot com
2005-03-08 21:55 ` aoliva at redhat dot com
2005-03-11 15:20 ` rth at gcc dot gnu dot org
2005-03-11 19:29 ` aoliva at redhat dot com
2005-03-17 10:42 ` aoliva at redhat dot com
2005-03-17 11:49 ` rth at gcc dot gnu dot org
2005-03-18  5:39 ` aoliva at redhat dot com
2005-03-18 10:16 ` aoliva at redhat dot com
2005-04-02 17:27 ` aoliva at redhat dot com
2005-04-05 14:47 ` pinskia at gcc dot gnu dot org
2005-04-17  3:57 ` mmitchel at gcc dot gnu dot org
2005-04-17  3:59 ` aoliva at redhat dot com
2005-04-17  4:03 ` mark at codesourcery dot com
2005-04-17  6:25 ` aoliva at redhat dot com
2005-07-06 17:03 ` mmitchel at gcc dot gnu dot org
2005-07-22 21:12 ` steven at gcc dot gnu dot org
2005-09-27 16:18 ` mmitchel at gcc dot gnu dot org
     [not found] <bug-20103-2744@http.gcc.gnu.org/bugzilla/>
2005-10-13 20:06 ` pinskia at gcc dot gnu dot org
2005-10-14 14:37 ` pinskia at gcc dot gnu dot org
2005-10-31  2:44 ` mmitchel at gcc dot gnu dot org
2006-05-25 20:26 ` mmitchel at gcc dot gnu dot org
2006-06-09  9:57 ` jakub at gcc dot gnu dot org
2006-06-10 22:23 ` pinskia at gcc dot gnu dot org
2006-07-03 23:52 ` tbm at cyrius dot com
2007-02-14  9:05 ` mmitchel at gcc dot gnu dot org

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20050305121606.17484.qmail@sourceware.org \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).