cp-tree.h (num_extra_vtbl_entries): New function.
authorMark Mitchell <mark@codesourcery.com>
Sun, 16 Jan 2000 16:59:44 +0000 (16:59 +0000)
committerMark Mitchell <mmitchel@gcc.gnu.org>
Sun, 16 Jan 2000 16:59:44 +0000 (16:59 +0000)
commit70ae32012466e09d67dd4eed3f74ea74f9c2629e
tree474362df55656c988b876cb23e1ad22cf0bc2401
parent2f4facc91eb1b0917f951bb0ff2571ed24d66e08
cp-tree.h (num_extra_vtbl_entries): New function.

* cp-tree.h (num_extra_vtbl_entries): New function.
(size_extra_vtbl_entries): Likewise.
(dfs_vtable_path_unmark): Likewise.
(dfs_vtable_path_unmarked_real_bases_queue_p): Likewise.
(dfs_vtable_path_marked_real_bases_queue_p): Likewise.
* class.c (num_extra_vtbl_entries): New function.
(size_extra_vtbl_entries): Likewise.
(dfs_build_vbase_offset_vtbl_entries): New function.
(build_vbase_offset_vtbl_entries): Likewise.
(build_vtbl_initializer): Use it.
(finish_struct_1): Adjust vtable sizes (using
num_extra_vtbl_entries).
* expr.c (cplus_expand_expr): Assert that the DECL_RTL for a
THUNK_DECL is non-NULL before expanding it.
* init.c (expand_virtual_init): Adjust the vtable pointer by
size_extra_vtbl_entries before storing it.
* search.c (get_shared_vase_if_not_primary): Adjust prototype.
Handle TREE_LIST parameters here, not in the dfs_* functions.
(dfs_unmarked_real_bases_queue_p): Adjust.
(dfs_marked_real_bases_queue_p): Likewise.
(dfs_vtable_path_unmarked_real_bases_queue_p): New function.
(dfs_vtable_path_marked_real_bases_queue_p): New function.
(dfs_vtable_path_unmark): Likewise.

From-SVN: r31439
gcc/cp/ChangeLog
gcc/cp/class.c
gcc/cp/cp-tree.h
gcc/cp/expr.c
gcc/cp/init.c
gcc/cp/search.c