aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/error.c
diff options
context:
space:
mode:
authorGabriel Dos Reis <gdr@integrable-solutions.net>2007-03-23 02:58:46 +0000
committerGabriel Dos Reis <gdr@gcc.gnu.org>2007-03-23 02:58:46 +0000
commit5a023baa1f8496c1c9c15f14d63e981331d8ea3a (patch)
tree284f1f8b157dee2010417f98eb94317715e97b9a /gcc/cp/error.c
parentecee68026b5c9005dfb0c351fa1c5edcf44340fa (diff)
downloadgcc-5a023baa1f8496c1c9c15f14d63e981331d8ea3a.zip
gcc-5a023baa1f8496c1c9c15f14d63e981331d8ea3a.tar.gz
gcc-5a023baa1f8496c1c9c15f14d63e981331d8ea3a.tar.bz2
error.c (dump_expr): Handle dependent names that designate types.
* error.c (dump_expr): Handle dependent names that designate types. * cxx-pretty-print.c (pp_cxx_unqualified_id): Handle TYPENAME_TYPE. From-SVN: r123148
Diffstat (limited to 'gcc/cp/error.c')
-rw-r--r--gcc/cp/error.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/gcc/cp/error.c b/gcc/cp/error.c
index 41a7e1d..27bcecf 100644
--- a/gcc/cp/error.c
+++ b/gcc/cp/error.c
@@ -1987,6 +1987,24 @@ dump_expr (tree t, int flags)
pp_cxx_identifier (cxx_pp, "...");
break;
+ case RECORD_TYPE:
+ case UNION_TYPE:
+ case ENUMERAL_TYPE:
+ case REAL_TYPE:
+ case VOID_TYPE:
+ case BOOLEAN_TYPE:
+ case INTEGER_TYPE:
+ case COMPLEX_TYPE:
+ case VECTOR_TYPE:
+ pp_type_specifier_seq (cxx_pp, t);
+ break;
+
+ case TYPENAME_TYPE:
+ /* We get here when we want to print a dependent type as an
+ id-expression, without any disambiguator decoration. */
+ pp_id_expression (cxx_pp, t);
+ break;
+
/* This list is incomplete, but should suffice for now.
It is very important that `sorry' does not call
`report_error_function'. That could cause an infinite loop. */