diff options
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/class.c | 16 | ||||
-rw-r--r-- | gcc/cp/cp-tree.h | 5 |
3 files changed, 13 insertions, 13 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 6b08e3c..ee0a612 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2002-08-04 Nathan Sidwell <nathan@codesourcery.com> + + * cp-tree.h (VF_DERIVED_VALUE): Remove. + * class.c (finish_struct_1): Use VF_BINFO_VALUE not VF_DERIVED_VALUE. + 2002-08-03 Nathan Sidwell <nathan@codesourcery.com> PR 7470. diff --git a/gcc/cp/class.c b/gcc/cp/class.c index eabe544..7129308 100644 --- a/gcc/cp/class.c +++ b/gcc/cp/class.c @@ -5120,15 +5120,13 @@ finish_struct_1 (t) { tree vfields = CLASSTYPE_VFIELDS (t); - while (vfields) - { - /* Mark the fact that constructor for T - could affect anybody inheriting from T - who wants to initialize vtables for VFIELDS's type. */ - if (VF_DERIVED_VALUE (vfields)) - TREE_ADDRESSABLE (vfields) = 1; - vfields = TREE_CHAIN (vfields); - } + for (vfields = CLASSTYPE_VFIELDS (t); + vfields; vfields = TREE_CHAIN (vfields)) + /* Mark the fact that constructor for T could affect anybody + inheriting from T who wants to initialize vtables for + VFIELDS's type. */ + if (VF_BINFO_VALUE (vfields)) + TREE_ADDRESSABLE (vfields) = 1; } /* Make the rtl for any new vtables we have created, and unmark diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h index 711fd81..5bdd419 100644 --- a/gcc/cp/cp-tree.h +++ b/gcc/cp/cp-tree.h @@ -1620,8 +1620,6 @@ struct lang_type GTY(()) #define VF_BASETYPE_VALUE(NODE) TREE_VALUE (NODE) /* Accessor macros for the BINFO_VIRTUALS list. */ -#define VF_DERIVED_VALUE(NODE) \ - (VF_BINFO_VALUE (NODE) ? BINFO_TYPE (VF_BINFO_VALUE (NODE)) : NULL_TREE) /* The number of bytes by which to adjust the `this' pointer when calling this virtual function. Subtract this value from the this @@ -1637,8 +1635,7 @@ struct lang_type GTY(()) #define BV_FN(NODE) (TREE_VALUE (NODE)) /* Nonzero if we should use a virtual thunk for this entry. */ -#define BV_USE_VCALL_INDEX_P(NODE) \ - (TREE_LANG_FLAG_0 (NODE)) +#define BV_USE_VCALL_INDEX_P(NODE) (TREE_LANG_FLAG_0 (NODE)) /* Nonzero for TREE_LIST node means that this list of things is a list of parameters, as opposed to a list of expressions. */ |