aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/cxx-pretty-print.c
diff options
context:
space:
mode:
authorPaolo Carlini <pcarlini@suse.de>2007-08-31 11:38:45 +0000
committerPaolo Carlini <paolo@gcc.gnu.org>2007-08-31 11:38:45 +0000
commitc8c00613059c0c5de5517474b7bb390bf21c4201 (patch)
tree724045b3e965a5a1835e53dcf4eab274cfd99dc2 /gcc/cp/cxx-pretty-print.c
parent8a26ebb635739d370e7726ec8af5d119bb86efdf (diff)
downloadgcc-c8c00613059c0c5de5517474b7bb390bf21c4201.zip
gcc-c8c00613059c0c5de5517474b7bb390bf21c4201.tar.gz
gcc-c8c00613059c0c5de5517474b7bb390bf21c4201.tar.bz2
re PR c++/33210 (Broken diagnostics: 'bound_template_template_parm' not supported by pp_cxx_unqualified_id/dump_decl)
/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. From-SVN: r127987
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 158cbc4..4bdd19d 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: