[cxx-abi-dev] C++0x POD
Gabriel Dos Reis
gdr at integrable-solutions.net
Wed Jul 15 16:53:17 UTC 2009
On Wed, Jul 15, 2009 at 11:32 AM, Mark Mitchell<mark at codesourcery.com> wrote:
> Jason Merrill wrote:
>> C++0x is changing the definition of POD again; most significantly, a POD
>> can now have non-public data members, base classes, and non-default/copy
>> constructors.
>
> I think we want to preserve ABI compatibility, even if that's suboptimal
> for performance in some way. The ABI already has a definition of "POD
> for purpose of layout"; we should check that it still means what it
> defines the same set of types that it did before. And, check that
> POD-ness doesn't appear elsewhere in the ABI. (I couldn't find any
> other places with a quick check.)
One of the purposes of the change is to have simple classes like
complex<double> acts like PODs for argument function calls (e.g. use
registers.) but without compromising guarantees made by C++03.
-- Gaby
More information about the cxx-abi-dev
mailing list