Wrong value printed by info locals for dynamic object.
[deliverable/binutils-gdb.git] / gdb / ui-out.c
index 6af26f1b7440352da5723af03035e8cd90c03f9a..c79e54ee2b2587e8d910db09fdd5658925b194ae 100644 (file)
@@ -1,6 +1,6 @@
 /* Output generating routines for GDB.
 
-   Copyright (C) 1999, 2000, 2001, 2002, 2004, 2005, 2007, 2008
+   Copyright (C) 1999, 2000, 2001, 2002, 2004, 2005, 2007, 2008, 2009, 2010
    Free Software Foundation, Inc.
 
    Contributed by Cygnus Solutions.
@@ -44,7 +44,7 @@ struct ui_out_hdr
    is always available.  Stack/nested level 0 is reserved for the
    top-level result. */
 
-enum { MAX_UI_OUT_LEVELS = 6 };
+enum { MAX_UI_OUT_LEVELS = 8 };
 
 struct ui_out_level
   {
@@ -100,7 +100,7 @@ struct ui_out
     int flags;
     /* specific implementation of ui-out */
     struct ui_out_impl *impl;
-    struct ui_out_data *data;
+    void *data;
 
     /* Sub structure tracking the ui-out depth.  */
     int level;
@@ -242,9 +242,6 @@ static void uo_field_int (struct ui_out *uiout, int fldno, int width,
                          enum ui_align align, const char *fldname, int value);
 static void uo_field_skip (struct ui_out *uiout, int fldno, int width,
                           enum ui_align align, const char *fldname);
-static void uo_field_string (struct ui_out *uiout, int fldno, int width,
-                            enum ui_align align, const char *fldname,
-                            const char *string);
 static void uo_field_fmt (struct ui_out *uiout, int fldno, int width,
                          enum ui_align align, const char *fldname,
                          const char *format, va_list args)
@@ -488,19 +485,18 @@ ui_out_field_fmt_int (struct ui_out *uiout,
 void
 ui_out_field_core_addr (struct ui_out *uiout,
                        const char *fldname,
+                       struct gdbarch *gdbarch,
                        CORE_ADDR address)
 {
   char addstr[20];
-  int addr_bit = gdbarch_addr_bit (current_gdbarch);
+  int addr_bit = gdbarch_addr_bit (gdbarch);
 
-  /* Truncate address to match deprecated_print_address_numeric().  */
   if (addr_bit < (sizeof (CORE_ADDR) * HOST_CHAR_BIT))
     address &= ((CORE_ADDR) 1 << addr_bit) - 1;
 
   /* FIXME: cagney/2002-05-03: Need local_address_string() function
      that returns the language localized string formatted to a width
      based on gdbarch_addr_bit.  */
-  /* deprecated_print_address_numeric (address, 1, local_stream); */
   if (addr_bit <= 32)
     strcpy (addstr, hex_string_custom (address, 8));
   else
@@ -1138,7 +1134,7 @@ ui_out_get_field_separator (struct ui_out *uiout)
 
 /* Access to ui-out members data */
 
-struct ui_out_data *
+void *
 ui_out_data (struct ui_out *uiout)
 {
   return uiout->data;
@@ -1147,8 +1143,7 @@ ui_out_data (struct ui_out *uiout)
 /* initalize private members at startup */
 
 struct ui_out *
-ui_out_new (struct ui_out_impl *impl,
-           struct ui_out_data *data,
+ui_out_new (struct ui_out_impl *impl, void *data,
            int flags)
 {
   struct ui_out *uiout = XMALLOC (struct ui_out);
This page took 0.025557 seconds and 4 git commands to generate.