2009-08-25 Janus Weil <janus@gcc.gnu.org>
authorjanus <janus@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 25 Aug 2009 09:35:41 +0000 (09:35 +0000)
committerjanus <janus@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 25 Aug 2009 09:35:41 +0000 (09:35 +0000)
PR middle-end/41149
* tree-pretty-print.c (print_call_name): Print the correct call name
for procedure pointer components.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151075 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/tree-pretty-print.c

index e3649ea..ed775e9 100644 (file)
@@ -1,3 +1,9 @@
+2009-08-25  Janus Weil  <janus@gcc.gnu.org>
+
+       PR middle-end/41149
+       * tree-pretty-print.c (print_call_name): Print the correct call name
+       for procedure pointer components.
+
 2009-08-24  Steve Ellcey  <sje@cup.hp.com>
 
        * config/ia64/ia64.c (ia64_promote_function_mode): Call
index faf23c6..2c64ab9 100644 (file)
@@ -2705,19 +2705,6 @@ print_call_name (pretty_printer *buffer, tree node, int flags)
       dump_generic_node (buffer, TREE_OPERAND (op0, 2), 0, flags, false);
       break;
 
-    case COMPONENT_REF:
-      /* The function is a pointer contained in a structure.  */
-      if (TREE_CODE (TREE_OPERAND (op0, 0)) == INDIRECT_REF ||
-         TREE_CODE (TREE_OPERAND (op0, 0)) == VAR_DECL)
-       dump_function_name (buffer, TREE_OPERAND (op0, 1), flags);
-      else
-       dump_generic_node (buffer, TREE_OPERAND (op0, 0), 0, flags, false);
-      /* else
-        We can have several levels of structures and a function
-        pointer inside.  This is not implemented yet...  */
-      /*                 NIY;*/
-      break;
-
     case ARRAY_REF:
       if (TREE_CODE (TREE_OPERAND (op0, 0)) == VAR_DECL)
        dump_function_name (buffer, TREE_OPERAND (op0, 0), flags);
@@ -2725,6 +2712,7 @@ print_call_name (pretty_printer *buffer, tree node, int flags)
        dump_generic_node (buffer, op0, 0, flags, false);
       break;
 
+    case COMPONENT_REF:
     case SSA_NAME:
     case OBJ_TYPE_REF:
       dump_generic_node (buffer, op0, 0, flags, false);