aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2014-11-20 19:47:45 -0500
committerJason Merrill <jason@gcc.gnu.org>2014-11-20 19:47:45 -0500
commite4c4792d37be8f7835dac75e929e7011ccba91fa (patch)
tree7b2a876c5046e24fbcca591086d2a274b87d8a8a /gcc
parentb33928046e444e62d84230b16acbad0262660f4c (diff)
downloadgcc-e4c4792d37be8f7835dac75e929e7011ccba91fa.zip
gcc-e4c4792d37be8f7835dac75e929e7011ccba91fa.tar.gz
gcc-e4c4792d37be8f7835dac75e929e7011ccba91fa.tar.bz2
* error.c (dump_expr): Avoid printing (*&i) for references.
From-SVN: r217899
Diffstat (limited to 'gcc')
-rw-r--r--gcc/cp/ChangeLog4
-rw-r--r--gcc/cp/error.c8
2 files changed, 11 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 2c98a71..305565f 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,7 @@
+2014-11-20 Jason Merrill <jason@redhat.com>
+
+ * error.c (dump_expr): Avoid printing (*&i) for references.
+
2014-11-20 Ville Voutilainen <ville.voutilainen@gmail.com>
PR c++/63959
diff --git a/gcc/cp/error.c b/gcc/cp/error.c
index 76f86cb..7d79771 100644
--- a/gcc/cp/error.c
+++ b/gcc/cp/error.c
@@ -2299,7 +2299,13 @@ dump_expr (cxx_pretty_printer *pp, tree t, int flags)
TREE_TYPE (ttype)))
{
if (TREE_CODE (ttype) == REFERENCE_TYPE)
- dump_unary_op (pp, "*", t, flags);
+ {
+ STRIP_NOPS (op);
+ if (TREE_CODE (op) == ADDR_EXPR)
+ dump_expr (pp, TREE_OPERAND (op, 0), flags);
+ else
+ dump_unary_op (pp, "*", t, flags);
+ }
else
dump_unary_op (pp, "&", t, flags);
}