diff options
| author | Nathan Sidwell <nathan@gcc.gnu.org> | 2004-07-26 08:23:58 +0000 |
|---|---|---|
| committer | Nathan Sidwell <nathan@gcc.gnu.org> | 2004-07-26 08:23:58 +0000 |
| commit | 63d1c7b35fe104326f278f45daf20743853920bb (patch) | |
| tree | a52bd0b1bb36a9dba1bfbf17a55c904a10884e28 /gcc/cp/decl.c | |
| parent | 9b4f6a07a51dd570a2c50fe944e1fbd91f766e76 (diff) | |
| download | gcc-63d1c7b35fe104326f278f45daf20743853920bb.zip gcc-63d1c7b35fe104326f278f45daf20743853920bb.tar.gz gcc-63d1c7b35fe104326f278f45daf20743853920bb.tar.bz2 | |
tree.h (BINFO_BASE_ACCESSES): Accesses are a VEC(tree).
.: * tree.h (BINFO_BASE_ACCESSES): Accesses are a VEC(tree).
(BINFO_BASE_ACCESS): Adjust.
(BINFO_BASE_ACCESS_APPEND): New.
(struct tree_binfo): Make base_accesses a VEC(tree) pointer.
* dbxout.c (dbxout_type): Adjust binfo access accessing.
* dwarf2out.c (gen_member_die): Likewise.
* tree-dump.c (deque_and_dump): Likewise.
cp:
* decl.c (xref_basetypes): Adjust base access vector creation.
* rtti.c (get_pseudo_ti_init, get_pseudo_ti_desc): Adjust base
access accesses.
* search.c (dynamic_cast_base_recurse, dfs_access_in_type): Likewise.
From-SVN: r85187
Diffstat (limited to 'gcc/cp/decl.c')
| -rw-r--r-- | gcc/cp/decl.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 2a9e61f..f901d98 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -9109,7 +9109,7 @@ xref_basetypes (tree ref, tree base_list) if (max_bases) { - BINFO_BASE_ACCESSES (binfo) = make_tree_vec (max_bases); + BINFO_BASE_ACCESSES (binfo) = VEC_alloc (tree, max_bases); /* An aggregate cannot have baseclasses. */ CLASSTYPE_NON_AGGREGATE (ref) = 1; @@ -9199,17 +9199,10 @@ xref_basetypes (tree ref, tree base_list) if (!BINFO_INHERITANCE_CHAIN (base_binfo)) BINFO_INHERITANCE_CHAIN (base_binfo) = binfo; - TREE_VEC_ELT (BINFO_BASE_ACCESSES (binfo), - BINFO_N_BASE_BINFOS (binfo)) = access; BINFO_BASE_APPEND (binfo, base_binfo); + BINFO_BASE_ACCESS_APPEND (binfo, access); } - if (max_bases) - /* If any bases were invalid, we will have allocated too many - slots. */ - TREE_VEC_LENGTH (BINFO_BASE_ACCESSES (binfo)) - = BINFO_N_BASE_BINFOS (binfo); - /* Unmark all the types. */ for (i = 0; BINFO_BASE_ITERATE (binfo, i, base_binfo); i++) CLEAR_CLASSTYPE_MARKED (BINFO_TYPE (base_binfo)); |
