From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7000 invoked by alias); 2 Apr 2005 17:27:42 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 6977 invoked by alias); 2 Apr 2005 17:27:39 -0000 Date: Sat, 02 Apr 2005 17:27:00 -0000 Message-ID: <20050402172739.6976.qmail@sourceware.org> From: "aoliva at redhat dot com" To: gcc-bugs@gcc.gnu.org In-Reply-To: <20050220111234.20103.falk@debian.org> References: <20050220111234.20103.falk@debian.org> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug c++/20103] [4.0/4.1 regression] ICE in create_tmp_var with C99 style struct initializer X-Bugzilla-Reason: CC X-SW-Source: 2005-04/txt/msg00167.txt.bz2 List-Id: ------- Additional Comments From aoliva at gcc dot gnu dot org 2005-04-02 17:27 ------- Subject: Re: [PR c++/20103] failure to gimplify constructors for addressable types On Mar 18, 2005, Alexandre Oliva wrote: > Index: gcc/ChangeLog > from Alexandre Oliva > PR c++/20103 > * gimplify.c (gimplify_decl_expr): Add temp variable to binding > before gimplifying its initializer. > * c-gimplify.c (gimplify_compound_literal_expr): After replacing > the expr with a decl, we're all done. > Index: gcc/cp/ChangeLog > from Alexandre Oliva > PR c++/20103 > * cp-tree.h (build_compound_literal): Declare. > * semantics.c (finish_compound_literal): Move most of the code... > * tree.c (build_compound_literal): ... here. New function. > (lvalue_p_1): Handle COMPOUND_LITERAL_EXPR. > (stabilize_init): Likewise. > * pt.c (tsubst_copy_and_build): Likewise. > * call.c (build_over_call): Likewise. > * class.c (fixed_type_or_null): Likewise. > * cp-gimplify.c (cp_gimplify_init_expr): Likewise. > (cp_gimplify_compound_literal_expr): New. > (cp_gimplify_expr): Use it. > * cvt.c (force_rvalue, ocp_convert): Handle COMPOUND_LITERAL_EXPR. > * typeck.c (build_x_unary_op): Likewise. > (cxx_mark_addressable): Likewise. > (maybe_warn_about_returning_address_of_local): Likewise. Ping? http://gcc.gnu.org/PR20103 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20103