[Bug c++/30111] Value-initialization of POD base class doesn't initialize members
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30111 Jackie Rosen jackie.rosen at hushmail dot com changed: What|Removed |Added CC||jackie.rosen at hushmail dot com --- Comment #11 from Jackie Rosen jackie.rosen at hushmail dot com --- *** Bug 260998 has been marked as a duplicate of this bug. *** Seen from the domain http://volichat.com Marked for reference. Resolved as fixed @bugzilla.
[Bug c++/30111] Value-initialization of POD base class doesn't initialize members
--- Comment #9 from jason at gcc dot gnu dot org 2009-02-11 22:38 --- Subject: Bug 30111 Author: jason Date: Wed Feb 11 22:38:37 2009 New Revision: 144112 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=144112 Log: PR c++/30111 * init.c (build_value_init_noctor): Split out from... (build_value_init): ...here. (expand_aggr_init_1): Handle value-initialization. * cp-tree.h: Add declaration. * class.c (type_has_user_provided_constructor): Handle non-class arguments. Added: trunk/gcc/testsuite/g++.dg/init/value7.C Modified: trunk/gcc/cp/ChangeLog trunk/gcc/cp/class.c trunk/gcc/cp/cp-tree.h trunk/gcc/cp/init.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30111
[Bug c++/30111] Value-initialization of POD base class doesn't initialize members
--- Comment #10 from jason at gcc dot gnu dot org 2009-02-11 22:50 --- Fixed for 4.4. -- jason at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30111
[Bug c++/30111] Value-initialization of POD base class doesn't initialize members
--- Comment #8 from rguenth at gcc dot gnu dot org 2008-02-04 16:06 --- Jason is this the same issue as PR33916 you fixed? (Your fix didn't change the outcome of this PR though) -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||jason at redhat dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30111
[Bug c++/30111] Value-initialization of POD base class doesn't initialize members
--- Comment #7 from jwakely dot gcc at gmail dot com 2007-06-18 01:36 --- Confirmed on x86-linux, sparc-solaris and ppc-AIX so I've removed the Target. Also verified that valgrind shows the uninitialised memory reads. This bug breaks common idioms like: template typename A, typename B struct compressed_pair : A { compressed_pair() : A(), second_() { } A first() { return *this; } B second() { return second_; } private: B second_; }; -- jwakely dot gcc at gmail dot com changed: What|Removed |Added GCC target triplet|sparc-sun-solaris2.9| Known to fail||4.2.0 4.1.1 3.4.3 3.3.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30111
[Bug c++/30111] Value-initialization of POD base class doesn't initialize members
--- Comment #6 from pinskia at gcc dot gnu dot org 2007-06-10 02:18 --- *** Bug 32141 has been marked as a duplicate of this bug. *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||james dot kanze at gmail dot ||com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30111
[Bug c++/30111] Value-initialization of POD base class doesn't initialize members
--- Comment #5 from gdr at gcc dot gnu dot org 2006-12-30 19:40 --- Thsi is indeed a bug in g++. the pod() in inherit() is a value-initialization, not a call to default-constructor. -- gdr at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2006-12-30 19:40:22 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30111
[Bug c++/30111] Value-initialization of POD base class doesn't initialize members
--- Comment #4 from gcc-bugzilla at kayari dot org 2006-12-08 10:36 --- Richard, there's no difference between pod() and p() in this case, both are value-initialisations of a POD class, therefore all non-static data members should be value-initialised. I cited 8.5p5 for good reason :) Sun CC 6.1 and 8 and IBM xlC 6 get this right. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30111
[Bug c++/30111] Value-initialization of POD base class doesn't initialize members
--- Comment #1 from gcc-bugzilla at kayari dot org 2006-12-07 18:03 --- Values printed out confirm it on Linux for 3.3.5 20050117 (prerelease) (SUSE Linux), and official FSF 3.4.3, 4.0.1, 4.0.2, 4.1.1 N.B. I meant AIX 5.3, not 5/3 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30111
[Bug c++/30111] Value-initialization of POD base class doesn't initialize members
--- Comment #2 from rguenth at gcc dot gnu dot org 2006-12-08 07:27 --- As compose is not POD it initializes p in the constructor. For inherit the constructor of p is called which - surprise - as a POD constructor does nothing. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30111
[Bug c++/30111] Value-initialization of POD base class doesn't initialize members
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-12-08 07:34 --- (In reply to comment #2) As compose is not POD it initializes p in the constructor. For inherit the constructor of p is called which - surprise - as a POD constructor does nothing. Actually read the standard, it does, see 8.5/7 and 8.5/5 the second part about default initializer. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|RESOLVED|UNCONFIRMED Resolution|INVALID | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30111