From: Jason Merrill Date: Sun, 31 May 1998 23:26:58 +0000 (+0000) Subject: * pt.c (tsubst): Always copy BINFO_BASETYPES. X-Git-Tag: prereleases/egcs-1.1-prerelease~999 X-Git-Url: https://gcc.gnu.org/git/?a=commitdiff_plain;h=1ceaad38dfebb9dac622f304cb76acc3cac96247;p=gcc.git * pt.c (tsubst): Always copy BINFO_BASETYPES. From-SVN: r20158 --- diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 16e5074143a8..c7e34a1bc7eb 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,7 @@ +1998-05-31 Jason Merrill + + * pt.c (tsubst): Always copy BINFO_BASETYPES. + 1998-05-29 scott snyder * tree.c (layout_basetypes): If we change TYPE_SIZE, change diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c index a214906eaaa1..3927b5181bef 100644 --- a/gcc/cp/pt.c +++ b/gcc/cp/pt.c @@ -4830,16 +4830,14 @@ tsubst (t, args, in_decl) case TREE_VEC: if (type != NULL_TREE) { - /* A binfo node. */ + /* A binfo node. We always need to make a copy, of the node + itself and of its BINFO_BASETYPES. */ t = copy_node (t); /* Make sure type isn't a typedef copy. */ type = BINFO_TYPE (TYPE_BINFO (type)); - if (type == TREE_TYPE (t)) - return t; - TREE_TYPE (t) = complete_type (type); if (IS_AGGR_TYPE (type)) {