OSDN Git Service

* cp-tree.h (merge_primary_and_secondary_vtables_p): New macro.
authormmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 21 Feb 2000 04:19:12 +0000 (04:19 +0000)
committermmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 21 Feb 2000 04:19:12 +0000 (04:19 +0000)
commitd8febc9dad5557dc2b37f818cd004cc44d302cb2
tree25058cbd565f8e010653d7db6f1eae0169153ad4
parentf9d272ac67c79fb083fea8efe041d2fd733d9af2
* cp-tree.h (merge_primary_and_secondary_vtables_p): New macro.
* class.c (build_secondary_vtable): Reorganize.  Don't create a
new vtable under the new ABI.
(layout_vtable_decl): Don't add num_extra_vtbl_entries when
computing the size.
(build_vtbl_initializer): Don't return a CONSTRUCTOR; just return
the initializing elements.
(initialize_vtable): New function.
(dfs_finish_vtbls): Use it.
(dfs_accumulate_vtbl_inits): New function.
(finish_vtbls): Merge primary and secondary vtables under the new
ABI.
(finish_struct_1): Remove redundant call to layout_vtable_decl.
* init.c (expand_virtual_init): Deal with BINFO_VTABLEs that
aren't VAR_DECLs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@32083 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/cp/ChangeLog
gcc/cp/class.c
gcc/cp/cp-tree.h
gcc/cp/init.c