class.c (check_field_decls): Remove empty_p parameter.
authorMark Mitchell <mark@codesourcery.com>
Tue, 15 Oct 2002 18:07:24 +0000 (18:07 +0000)
committerMark Mitchell <mmitchel@gcc.gnu.org>
Tue, 15 Oct 2002 18:07:24 +0000 (18:07 +0000)
commit58731fd132e25cb603d1e1feaaace2cb91250c12
tree540eba52f5bcd4dc6ad66ca792f75b01a15d0874
parenta2ee89d82d9ccb19e489ceed121057f23a34da4f
class.c (check_field_decls): Remove empty_p parameter.

* class.c (check_field_decls): Remove empty_p parameter.  Instead,
clear CLASSTYPE_EMPTY_P.
(build_base_field): Likewise.
(build_base_fields): Likewise.
(check_bases_and_members): Likewise.
(create_vtbl_ptr): Likewise.
(layout_class_type): Likewise.  Ensure that empty classes have
size zero when used as base classes in the 3.2 ABI.
(finish_struct_1): Initialize CLASSTYPE_EMPTY_P and
CLASSTYPE_NEARLY_EMPTY_P.  Adjust calls to avoid passing empty_p
parameter.
(is_empty_class): Correct definition when using post-3.2 ABI.
* cp-tree.h (lang_type_class): Add empty_p.
(CLASSTYPE_EMPTY_P): New macro.

From-SVN: r58170
gcc/cp/ChangeLog
gcc/cp/class.c
gcc/cp/cp-tree.h
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/abi/empty8.C [new file with mode: 0644]