]> gcc.gnu.org Git - gcc.git/commit
Stop sharing binfos for indirect virtual bases.
authorJason Merrill <jason@yorick.cygnus.com>
Thu, 27 Aug 1998 01:41:17 +0000 (01:41 +0000)
committerJason Merrill <jason@gcc.gnu.org>
Thu, 27 Aug 1998 01:41:17 +0000 (21:41 -0400)
commit0ec57017569c318060c3a9b0f6fb75979291c6c8
tree9aeb96010eb77e1a52847d09d87204cb2f6a7c79
parent1ca7641e55b83022d3374d71a69f27003e52b8c3
Stop sharing binfos for indirect virtual bases.

* tree.c (propagate_binfo_offsets): Unshare vbases, too.
(layout_basetypes): Likewise.
(unshare_base_binfos): Copy vbases, too.
* cp-tree.h (BINFO_VIA_PUBLIC, BINFO_BASEINIT_MARKED,
BINFO_VBASE_INIT_MARKED): Remove obsolete macros.
(BINFO_PUSHDECLS_MARKED, SET_BINFO_PUSHDECLS_MARKED,
CLEAR_BINFO_PUSHDECLS_MARKED): New macros.
* search.c (lookup_field, lookup_fnfields, lookup_member): Remove
reference to BINFO_VIA_PUBLIC.
(marked_pushdecls_p, unmarked_pushdecls_p): New fns.
(push_class_decls): Use them.
(dfs_pushdecls): Use SET_BINFO_PUSHDECLS_MARKED.
(dfs_compress_decls): Use CLEAR_BINFO_PUSHDECLS_MARKED.

From-SVN: r22017
gcc/cp/ChangeLog
gcc/cp/cp-tree.h
gcc/cp/search.c
gcc/cp/tree.c
This page took 0.072963 seconds and 5 git commands to generate.