[Bug c++/18793] [4.0 regression] ICE in cp_expr_size

2004-12-14 Thread mmitchel at gcc dot gnu dot org
--- Additional Comments From mmitchel at gcc dot gnu dot org 2004-12-14 19:40 --- Fixed in GCC 4.0. -- What|Removed |Added Status|ASSIGNED|RE

[Bug c++/18793] [4.0 regression] ICE in cp_expr_size

2004-12-14 Thread cvs-commit at gcc dot gnu dot org
--- Additional Comments From cvs-commit at gcc dot gnu dot org 2004-12-14 19:38 --- Subject: Bug 18793 CVSROOT:/cvs/gcc Module name:gcc Changes by: [EMAIL PROTECTED] 2004-12-14 19:38:26 Modified files: gcc/testsuite : ChangeLog gcc/cp : C

[Bug c++/18793] [4.0 regression] ICE in cp_expr_size

2004-12-14 Thread mmitchel at gcc dot gnu dot org
--- Additional Comments From mmitchel at gcc dot gnu dot org 2004-12-14 17:46 --- Upon further reflection, I don't see a problem with what the gimplifier is doing, because it does not actually try to construct the S component in the temporary variable. -- http://gcc.gnu.org/bugzilla/

[Bug c++/18793] [4.0 regression] ICE in cp_expr_size

2004-12-13 Thread mmitchel at gcc dot gnu dot org
--- Additional Comments From mmitchel at gcc dot gnu dot org 2004-12-14 07:24 --- I'm not sure how to fix this yet. The C++ front end is generating what looks to me to perfectly reasonable code. Then, gimplify_init_constructor decides that it wants to create a temporary variable of typ

[Bug c++/18793] [4.0 regression] ICE in cp_expr_size

2004-12-07 Thread mmitchel at gcc dot gnu dot org
-- What|Removed |Added AssignedTo|unassigned at gcc dot gnu |mark at codesourcery dot com |dot org | Status|NEW

[Bug c++/18793] [4.0 regression] ICE in cp_expr_size

2004-12-07 Thread reichelt at gcc dot gnu dot org
--- Additional Comments From reichelt at gcc dot gnu dot org 2004-12-07 15:49 --- Mark, the regression appeared with your patch for PR 15172: http://gcc.gnu.org/ml/gcc-cvs/2004-11/msg2.html The example still compiles fine on the 3.4 branch although you applied the patch there, too.

[Bug c++/18793] [4.0 regression] ICE in cp_expr_size

2004-12-07 Thread pinskia at gcc dot gnu dot org
--- Additional Comments From pinskia at gcc dot gnu dot org 2004-12-07 15:13 --- *** Bug 18865 has been marked as a duplicate of this bug. *** -- What|Removed |Added

[Bug c++/18793] [4.0 regression] ICE in cp_expr_size

2004-12-07 Thread bangerth at dealii dot org
--- Additional Comments From bangerth at dealii dot org 2004-12-07 14:19 --- This is most likely the same as PR 18865. W. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18793

[Bug c++/18793] [4.0 regression] ICE in cp_expr_size

2004-12-02 Thread bangerth at dealii dot org
--- Additional Comments From bangerth at dealii dot org 2004-12-02 23:34 --- We can save one layer of objects: - struct S { S(); S(const S&); void operator=(const S&); }; struct X { int a, b, c, d, e; S s; }; void foobar () { X x =

[Bug c++/18793] [4.0 regression] ICE in cp_expr_size

2004-12-02 Thread pinskia at gcc dot gnu dot org
--- Additional Comments From pinskia at gcc dot gnu dot org 2004-12-02 22:10 --- The problem is that we are putting the struct in static space: static struct Record C.0 = {.a=0}; -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18793

[Bug c++/18793] [4.0 regression] ICE in cp_expr_size

2004-12-02 Thread pinskia at gcc dot gnu dot org
--- Additional Comments From pinskia at gcc dot gnu dot org 2004-12-02 20:46 --- Reduced testcase: struct allocator { allocator() throw(); allocator(const allocator& __a); }; struct string { mutable allocator _M_dataplus; string& operator=(const string& __str); }; struct Record {

[Bug c++/18793] [4.0 regression] ICE in cp_expr_size

2004-12-02 Thread pinskia at gcc dot gnu dot org
--- Additional Comments From pinskia at gcc dot gnu dot org 2004-12-02 20:36 --- I have it done 120 lines or so. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18793

[Bug c++/18793] [4.0 regression] ICE in cp_expr_size

2004-12-02 Thread bangerth at dealii dot org
--- Additional Comments From bangerth at dealii dot org 2004-12-02 20:12 --- That's as short as I can get it for now: -- #include struct Record { unsigned int a, b, c, d, e; std::string description; }; template void foobar () { co

[Bug c++/18793] [4.0 regression] ICE in cp_expr_size

2004-12-02 Thread bangerth at dealii dot org
-- What|Removed |Added Keywords||ice-on-valid-code Target Milestone|--- |4.0.0 http://gcc.gnu.org/bugzilla/show_bug.

[Bug c++/18793] [4.0 regression] ICE in cp_expr_size

2004-12-02 Thread bangerth at dealii dot org
--- Additional Comments From bangerth at dealii dot org 2004-12-02 19:58 --- Created an attachment (id=7663) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=7663&action=view) Preprocessed sources, not reduced -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18793