Index: gcc/tree-pretty-print.c
===================================================================
--- gcc/tree-pretty-print.c	(revision 162126)
+++ gcc/tree-pretty-print.c	(working copy)
@@ -828,7 +828,7 @@ dump_generic_node (pretty_printer *buffe
 	    pp_string (buffer, "MEM[");
 	    pp_string (buffer, "(");
 	    dump_generic_node (buffer, TREE_TYPE (TREE_OPERAND (node, 1)),
-			       spc, flags, false);
+			       spc, flags | TDF_SLIM, false);
 	    pp_string (buffer, ")");
 	    dump_generic_node (buffer, TREE_OPERAND (node, 0),
 			       spc, flags, false);
@@ -1113,7 +1113,7 @@ dump_generic_node (pretty_printer *buffe
 	}
       if (DECL_NAME (node))
 	dump_decl_name (buffer, node, flags);
-      else
+      else if (TYPE_NAME (TREE_TYPE (node)) != node)
 	{
 	  if ((TREE_CODE (TREE_TYPE (node)) == RECORD_TYPE
 	       || TREE_CODE (TREE_TYPE (node)) == UNION_TYPE)
@@ -1132,6 +1132,8 @@ dump_generic_node (pretty_printer *buffe
 	      dump_generic_node (buffer, TREE_TYPE (node), spc, flags, false);
 	    }
 	}
+      else
+	pp_string (buffer, "<anon>");
       break;
 
     case VAR_DECL:
