summaryrefslogtreecommitdiff
path: root/gcc/cp/cxx-pretty-print.c
diff options
context:
space:
mode:
authorpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>2007-08-31 11:38:45 +0000
committerpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>2007-08-31 11:38:45 +0000
commita0bf269cc2c3884fc0a0a4f3cfe40c48c57e2b19 (patch)
tree724045b3e965a5a1835e53dcf4eab274cfd99dc2 /gcc/cp/cxx-pretty-print.c
parent98fccce54ab1ec00e4ff4d4b6778c049d3ef22b1 (diff)
downloadgcc-a0bf269cc2c3884fc0a0a4f3cfe40c48c57e2b19.tar.gz
/cp
2007-08-31 Paolo Carlini <pcarlini@suse.de> PR c++/33210 * cxx-pretty-print.c (pp_cxx_unqualified_id): Deal with BOUND_TEMPLATE_TEMPLATE_PARM. /testsuite 2007-08-31 Paolo Carlini <pcarlini@suse.de> PR c++/33210 * g++.dg/template/error30.C: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127987 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/cxx-pretty-print.c')
-rw-r--r--gcc/cp/cxx-pretty-print.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/gcc/cp/cxx-pretty-print.c b/gcc/cp/cxx-pretty-print.c
index 158cbc4f076..4bdd19d57e6 100644
--- a/gcc/cp/cxx-pretty-print.c
+++ b/gcc/cp/cxx-pretty-print.c
@@ -190,6 +190,8 @@ pp_cxx_unqualified_id (cxx_pretty_printer *pp, tree t)
case RECORD_TYPE:
case UNION_TYPE:
case ENUMERAL_TYPE:
+ case TYPENAME_TYPE:
+ case UNBOUND_CLASS_TEMPLATE:
pp_cxx_unqualified_id (pp, TYPE_NAME (t));
break;
@@ -205,9 +207,12 @@ pp_cxx_unqualified_id (cxx_pretty_printer *pp, tree t)
pp_cxx_unqualified_id (pp, TEMPLATE_PARM_DECL (t));
break;
- case TYPENAME_TYPE:
- case UNBOUND_CLASS_TEMPLATE:
- pp_cxx_unqualified_id (pp, TYPE_NAME (t));
+ case BOUND_TEMPLATE_TEMPLATE_PARM:
+ pp_cxx_cv_qualifier_seq (pp, t);
+ pp_cxx_unqualified_id (pp, TYPE_IDENTIFIER (t));
+ pp_cxx_begin_template_argument_list (pp);
+ pp_cxx_template_argument_list (pp, TYPE_TI_ARGS (t));
+ pp_cxx_end_template_argument_list (pp);
break;
default: