diff options
Diffstat (limited to 'gcc')
| -rw-r--r-- | gcc/cp/ChangeLog | 7 | ||||
| -rw-r--r-- | gcc/cp/cxx-pretty-print.c | 2 | ||||
| -rw-r--r-- | gcc/cp/search.c | 4 |
3 files changed, 11 insertions, 2 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 77e30a5..7c8c1d2 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,10 @@ +2004-03-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> + + * cxx-pretty-print.c (pp_cxx_unqualified_id): Use + TEMPLATE_TYPE_PARM_INDEX instead of TYPE_FIELDS. + * search.c (dfs_unuse_fields): Add two more TREE_CODES that mean + the field is named TEMPLATE_TYPE_PARM_INDEX. + 2004-03-19 Giovanni Bajo <giovannibajo@gcc.gnu.org> PR c++/14545 diff --git a/gcc/cp/cxx-pretty-print.c b/gcc/cp/cxx-pretty-print.c index 53c677a..0a573f2 100644 --- a/gcc/cp/cxx-pretty-print.c +++ b/gcc/cp/cxx-pretty-print.c @@ -184,7 +184,7 @@ pp_cxx_unqualified_id (cxx_pretty_printer *pp, tree t) break; case TEMPLATE_TYPE_PARM: - t = TYPE_FIELDS (t); + t = TEMPLATE_TYPE_PARM_INDEX (t); case TEMPLATE_PARM_INDEX: pp_cxx_unqualified_id (pp, TEMPLATE_PARM_DECL (t)); break; diff --git a/gcc/cp/search.c b/gcc/cp/search.c index 11c7ded..5f4c91c 100644 --- a/gcc/cp/search.c +++ b/gcc/cp/search.c @@ -2258,7 +2258,9 @@ dfs_unuse_fields (tree binfo, void *data ATTRIBUTE_UNUSED) fields = TYPENAME_TYPE_FULLNAME (type); else if (TREE_CODE (type) == TYPEOF_TYPE) fields = TYPEOF_TYPE_EXPR (type); - else if (TREE_CODE (type) == TEMPLATE_TYPE_PARM) + else if (TREE_CODE (type) == TEMPLATE_TYPE_PARM + || TREE_CODE (type) == TEMPLATE_TEMPLATE_PARM + || TREE_CODE (type) == BOUND_TEMPLATE_TEMPLATE_PARM) fields = TEMPLATE_TYPE_PARM_INDEX (type); else fields = TYPE_FIELDS (type); |
