cp:
authornathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 7 Aug 2001 13:57:06 +0000 (13:57 +0000)
committernathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 7 Aug 2001 13:57:06 +0000 (13:57 +0000)
commite4e264a59d6bdaad681584a416b614178706eb4e
treebe17021c95979d0552d64010022af0cefd41ff1d
parent06a652d18a88cf1ac89ab9a2bb111345968c2d80
cp:
PR c++/3820
Stop using TYPE_NONCOPIED_PARTS.
* call.c (build_over_call): Be careful when copy constructing
or assigning to an empty class.
* class.c (check_bases_and_members): It has a
COMPLEX_ASSIGN_REF if it has a vptr.
(layout_class_type): Don't add empty class padding to
TYPE_NONCOPIED_PARTS.
(finish_struct_1): Don't add the VFIELD either.
* cp-tree.h (TYPE_HAS_TRIVIAL_INIT_REF): Mention _copy_
initialization.
testsuite:
* g++.dg/abi/empty4.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44691 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/cp/ChangeLog
gcc/cp/call.c
gcc/cp/class.c
gcc/cp/cp-tree.h
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/abi/empty4.C [new file with mode: 0644]