summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgdr <gdr@138bc75d-0d04-0410-961f-82ee72b054a4>2003-06-21 16:43:44 +0000
committergdr <gdr@138bc75d-0d04-0410-961f-82ee72b054a4>2003-06-21 16:43:44 +0000
commitefcc369ab281b97c5c28962fa52b57e49e63fdde (patch)
tree37bfdaf1915c698cc79442e25bc63b63a33fe702
parent941a4893efeb7195e234edb1b23e19823f51a233 (diff)
downloadppe42-gcc-efcc369ab281b97c5c28962fa52b57e49e63fdde.tar.gz
ppe42-gcc-efcc369ab281b97c5c28962fa52b57e49e63fdde.zip
PC c++/10864
* call.c (op_error): Tidy. * error.c (dump_expr): Properly format 'T()' when T is an aggregate type. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68309 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/cp/ChangeLog7
-rw-r--r--gcc/cp/call.c20
2 files changed, 19 insertions, 8 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 7f0c4ede4c0..0e679c9268b 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,10 @@
+2003-06-21 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ PC c++/10864
+ * call.c (op_error): Tidy.
+ * error.c (dump_expr): Properly format 'T()' when T is an
+ aggregate type.
+
2003-06-21 Gabriel Dos Reis <gdr@integrable-solutions.net>
PR c++/10915
diff --git a/gcc/cp/call.c b/gcc/cp/call.c
index 9bc55bef9e2..48e36421223 100644
--- a/gcc/cp/call.c
+++ b/gcc/cp/call.c
@@ -3130,23 +3130,27 @@ op_error (enum tree_code code, enum tree_code code2,
switch (code)
{
case COND_EXPR:
- error ("%s for `%T ? %T : %T' operator", problem,
- error_type (arg1), error_type (arg2), error_type (arg3));
+ error ("%s for ternary 'operator?:' in '%E ? %E : %E'",
+ problem, arg1, arg2, arg3);
break;
+
case POSTINCREMENT_EXPR:
case POSTDECREMENT_EXPR:
- error ("%s for `%T %s' operator", problem, error_type (arg1), opname);
+ error ("%s for 'operator%s' in '%E%s'", problem, opname, arg1, opname);
break;
+
case ARRAY_REF:
- error ("%s for `%T [%T]' operator", problem,
- error_type (arg1), error_type (arg2));
+ error ("%s for 'operator[]' in '%E[%E]'", problem, arg1, arg2);
break;
+
default:
if (arg2)
- error ("%s for `%T %s %T' operator", problem,
- error_type (arg1), opname, error_type (arg2));
+ error ("%s for 'operator%s' in '%E %s %E'",
+ problem, opname, arg1, opname, arg2);
else
- error ("%s for `%s %T' operator", problem, opname, error_type (arg1));
+ error ("%s for 'operator%s' in '%s%E'",
+ problem, opname, opname, arg1);
+ break;
}
}
OpenPOWER on IntegriCloud