This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: Bugs/non-portable assumptions in libstdc++
- From: Paolo Carlini <pcarlini at suse dot de>
- To: Chris Lattner <sabre at nondot dot org>
- Cc: libstdc++ at gcc dot gnu dot org, Nathan Myers <ncm at cantrip dot org>,bkoz at redhat dot com
- Date: Sun, 21 Nov 2004 11:36:10 +0100
- Subject: Re: Bugs/non-portable assumptions in libstdc++
- References: <Pine.LNX.4.44.0411202055230.5509-100000@nondot.org>
Chris Lattner wrote:
I'm sorry I wasn't clear. In particular, I specifically mean non-POD
objects. The reference above seems to really to only apply to POD objects
that don't have constructors.
I don't think so, because the reference I gave is the *beginning* of
3.6.2 and the
whole 3.6 is certainly not about POD generally (POD types are introduced
later,
in 3.9). Also, POD are specifically mentioned (with a forward reference
to 3.9),
later in the paragraph, for some specific details.
In particular, 12.6.2.4 (in 14882-2003b) says:
"...
After the call to a constructor for class X has completed, if a member of
X is neither specified in the constructors mem-initializers, nor
default-initialized, nor value-initialized, nor given a value during
execution of the body of the constructor, the member has indeterminate
value."
Whereas *this* paragraph begins with "If a given nonstatic data
member... " ;)
Paolo.