* expprint.c (print_subexp_standard, dump_subexp_body_standard): Add
authorDaniel Jacobowitz <drow@false.org>
Mon, 7 Aug 2006 03:30:54 +0000 (03:30 +0000)
committerDaniel Jacobowitz <drow@false.org>
Mon, 7 Aug 2006 03:30:54 +0000 (03:30 +0000)
support for member pointers.

gdb/ChangeLog
gdb/expprint.c

index 99beeee611ec6c2dcb88defe4552c42f744f58fc..fb6e84ab1bd55e4307555267fa5c97d06fde177d 100644 (file)
@@ -1,3 +1,8 @@
+2006-08-06  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * expprint.c (print_subexp_standard, dump_subexp_body_standard): Add
+       support for member pointers.
+
 2006-08-02  Mark Kettenis  <kettenis@gnu.org>
 
        * arm-tdep.h: Add multiple inclusion protection.
index 77493b012eee4ee77f02fc493a4847c44cf500c4..c7633b5af1b35fd1bec7378d2149d9774577d6c0 100644 (file)
@@ -346,6 +346,18 @@ print_subexp_standard (struct expression *exp, int *pos,
       fputs_filtered (&exp->elts[pc + 2].string, stream);
       return;
 
+    case STRUCTOP_MEMBER:
+      print_subexp (exp, pos, stream, PREC_SUFFIX);
+      fputs_filtered (".*", stream);
+      print_subexp (exp, pos, stream, PREC_SUFFIX);
+      return;
+
+    case STRUCTOP_MPTR:
+      print_subexp (exp, pos, stream, PREC_SUFFIX);
+      fputs_filtered ("->*", stream);
+      print_subexp (exp, pos, stream, PREC_SUFFIX);
+      return;
+
     case BINOP_SUBSCRIPT:
       print_subexp (exp, pos, stream, PREC_SUFFIX);
       fputs_filtered ("[", stream);
@@ -873,6 +885,8 @@ dump_subexp_body_standard (struct expression *exp,
     case BINOP_IN:
     case BINOP_RANGE:
     case BINOP_END:
+    case STRUCTOP_MEMBER:
+    case STRUCTOP_MPTR:
       elt = dump_subexp (exp, stream, elt);
     case UNOP_NEG:
     case UNOP_LOGICAL_NOT:
@@ -1026,8 +1040,6 @@ dump_subexp_body_standard (struct expression *exp,
       break;
     default:
     case OP_NULL:
-    case STRUCTOP_MEMBER:
-    case STRUCTOP_MPTR:
     case MULTI_SUBSCRIPT:
     case OP_F77_UNDETERMINED_ARGLIST:
     case OP_COMPLEX: