aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/cp/ChangeLog4
-rw-r--r--gcc/cp/dump.c14
2 files changed, 18 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 8739537..ad8e872 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,7 @@
+1999-08-25 Mark Mitchell <mark@codesourcery.com>
+
+ * dump.c (dequeue_and_dump): Dump TARGET_EXPRs.
+
1999-08-25 Nathan Sidwell <nathan@acm.org>
* decl2.c (handle_class_head): Be graceful about additional
diff --git a/gcc/cp/dump.c b/gcc/cp/dump.c
index 4ef27e1..abffb39 100644
--- a/gcc/cp/dump.c
+++ b/gcc/cp/dump.c
@@ -828,6 +828,20 @@ dequeue_and_dump (di)
dump_child ("stmt", STMT_EXPR_STMT (t));
break;
+ case TARGET_EXPR:
+ if (dump_children_p)
+ {
+ dump_child ("decl", TREE_OPERAND (t, 0));
+ dump_child ("init", TREE_OPERAND (t, 1));
+ dump_child ("clnp", TREE_OPERAND (t, 2));
+ /* There really are two possible places the initializer can
+ be. After RTL expansion, the second operand is moved to
+ the position of the fourth operand, and the second
+ operand becomes NULL. */
+ dump_child ("init", TREE_OPERAND (t, 3));
+ }
+ break;
+
default:
/* There are no additional fields to print. */
break;