]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
* stack.c (print_block_frame_locals): Print spaces, not tabs.
authorTom Tromey <tromey@redhat.com>
Mon, 22 Dec 2008 23:11:56 +0000 (23:11 +0000)
committerTom Tromey <tromey@redhat.com>
Mon, 22 Dec 2008 23:11:56 +0000 (23:11 +0000)
Update for call to print_variable_and_value.
(print_frame_arg_vars): Update.
* value.h (print_variable_and_value): Rename from
print_variable_value.  Add 'name' and 'indent' parameters.
* printcmd.c (print_variable_and_value): Rename from
print_variable_value.  Add 'name' and 'indent' parameters.  Use
common_val_print.
* f-valprint.c (info_common_command): Update.

gdb/ChangeLog
gdb/f-valprint.c
gdb/printcmd.c
gdb/stack.c
gdb/value.h

index e917700f7a754e394cc27b5ac123da42c72d42dd..8994407bbcc1da2b61a2960378e5fa9403333150 100644 (file)
@@ -1,3 +1,15 @@
+2008-12-22  Tom Tromey  <tromey@redhat.com>
+
+       * stack.c (print_block_frame_locals): Print spaces, not tabs.
+       Update for call to print_variable_and_value.
+       (print_frame_arg_vars): Update.
+       * value.h (print_variable_and_value): Rename from
+       print_variable_value.  Add 'name' and 'indent' parameters.
+       * printcmd.c (print_variable_and_value): Rename from
+       print_variable_value.  Add 'name' and 'indent' parameters.  Use
+       common_val_print.
+       * f-valprint.c (info_common_command): Update.
+
 2008-12-22  Tom Tromey  <tromey@redhat.com>
 
        * python/python-value.c (valpy_length): Remove #if.
index f893b4991c4e14427e8e52269da5cd17c3387338..a2d2a20107563b96c0dfd59df2fb17c5274b0b16 100644 (file)
@@ -566,9 +566,7 @@ info_common_command (char *comname, int from_tty)
 
       while (entry != NULL)
        {
-         printf_filtered ("%s = ", SYMBOL_PRINT_NAME (entry->symbol));
-         print_variable_value (entry->symbol, fi, gdb_stdout);
-         printf_filtered ("\n");
+         print_variable_and_value (NULL, entry->symbol, fi, gdb_stdout, 0);
          entry = entry->next;
        }
     }
index 6d6b91580e90cacd8e0af091a4d25149ec4b0ee0..c4262d53d8d26cb51a91ff285b88ccb56cd5ecbb 100644 (file)
@@ -1731,17 +1731,28 @@ disable_display_command (char *args, int from_tty)
 \f
 
 /* Print the value in stack frame FRAME of a variable specified by a
-   struct symbol.  */
+   struct symbol.  NAME is the name to print; if NULL then VAR's print
+   name will be used.  STREAM is the ui_file on which to print the
+   value.  INDENT specifies the number of indent levels to print
+   before printing the variable name.  */
 
 void
-print_variable_value (struct symbol *var, struct frame_info *frame,
-                     struct ui_file *stream)
+print_variable_and_value (const char *name, struct symbol *var,
+                         struct frame_info *frame,
+                         struct ui_file *stream, int indent)
 {
-  struct value *val = read_var_value (var, frame);
+  struct value *val;
   struct value_print_options opts;
 
+  if (!name)
+    name = SYMBOL_PRINT_NAME (var);
+
+  fprintf_filtered (stream, "%s%s = ", n_spaces (2 * indent), name);
+
+  val = read_var_value (var, frame);
   get_user_print_options (&opts);
-  value_print (val, stream, &opts);
+  common_val_print (val, stream, indent, &opts, current_language);
+  fprintf_filtered (stream, "\n");
 }
 
 static void
index 3c1019b22c1f5d5c304d45e4679b217f6615535a..51dd1bc752ed7ec7d1f0f624e9b3be2d99082f65 100644 (file)
@@ -1374,12 +1374,7 @@ print_block_frame_locals (struct block *b, struct frame_info *frame,
          if (SYMBOL_IS_ARGUMENT (sym))
            break;
          values_printed = 1;
-         for (j = 0; j < num_tabs; j++)
-           fputs_filtered ("\t", stream);
-         fputs_filtered (SYMBOL_PRINT_NAME (sym), stream);
-         fputs_filtered (" = ", stream);
-         print_variable_value (sym, frame, stream);
-         fprintf_filtered (stream, "\n");
+         print_variable_and_value (NULL, sym, frame, stream, 4 * num_tabs);
          break;
 
        default:
@@ -1575,8 +1570,6 @@ print_frame_arg_vars (struct frame_info *frame, struct ui_file *stream)
       if (SYMBOL_IS_ARGUMENT (sym))
        {
          values_printed = 1;
-         fputs_filtered (SYMBOL_PRINT_NAME (sym), stream);
-         fputs_filtered (" = ", stream);
 
          /* We have to look up the symbol because arguments can have
             two entries (one a parameter, one a local) and the one we
@@ -1591,8 +1584,8 @@ print_frame_arg_vars (struct frame_info *frame, struct ui_file *stream)
 
          sym2 = lookup_symbol (SYMBOL_LINKAGE_NAME (sym),
                                b, VAR_DOMAIN, NULL);
-         print_variable_value (sym2, frame, stream);
-         fprintf_filtered (stream, "\n");
+         print_variable_and_value (SYMBOL_PRINT_NAME (sym), sym2,
+                                   frame, stream, 0);
        }
     }
 
index a882004e5ce5fff8ac1fd98ada2d164e741c8f85..29619194b112ac7417362ebfb7f34ccbfe4685b7 100644 (file)
@@ -557,9 +557,11 @@ extern int val_print_string (CORE_ADDR addr, int len, int width,
                             struct ui_file *stream,
                             const struct value_print_options *options);
 
-extern void print_variable_value (struct symbol *var,
-                                 struct frame_info *frame,
-                                 struct ui_file *stream);
+extern void print_variable_and_value (const char *name,
+                                     struct symbol *var,
+                                     struct frame_info *frame,
+                                     struct ui_file *stream,
+                                     int indent);
 
 extern int check_field (struct type *, const char *);