2010-05-13 Michael Snyder <msnyder@vmware.com>

* charset.c: White space.
	* c-lang.c: White space.
	* cli-out.c: White space.
	* coffread.c: White space.
	* complaints.c: White space.
	* completer.c: White space.
	* corefile.c: White space.
	* corelow.c: White space.
	* cp-abi.c: White space.
	* cp-namespace.c: White space.
	* cp-support.c: White space.
	* cp-valprint.c: White space.
	* c-typeprint.c: White space.
	* c-valprint.c: White space.
This commit is contained in:
Michael Snyder 2010-05-13 23:53:32 +00:00
parent cc59ec59c8
commit c5504eafbc
15 changed files with 115 additions and 22 deletions

View File

@ -1,5 +1,19 @@
2010-05-13 Michael Snyder <msnyder@vmware.com>
* charset.c: White space.
* c-lang.c: White space.
* cli-out.c: White space.
* coffread.c: White space.
* complaints.c: White space.
* completer.c: White space.
* corefile.c: White space.
* corelow.c: White space.
* cp-abi.c: White space.
* cp-namespace.c: White space.
* cp-support.c: White space.
* cp-valprint.c: White space.
* c-typeprint.c: White space.
* c-valprint.c: White space.
* blockframe.c: White space.
* breakpoint.c: White space.
* buildsym.c: White space.

View File

@ -179,6 +179,7 @@ print_wchar (gdb_wint_t w, const gdb_byte *orig, int orig_len,
int quoter, int *need_escapep)
{
int need_escape = *need_escapep;
*need_escapep = 0;
if (gdb_iswprint (w) && (!need_escape || (!gdb_iswdigit (w)
&& w != LCST ('8')
@ -223,6 +224,7 @@ print_wchar (gdb_wint_t w, const gdb_byte *orig, int orig_len,
{
char octal[30];
ULONGEST value;
value = extract_unsigned_integer (&orig[i], width, byte_order);
/* If the value fits in 3 octal digits, print it that
way. Otherwise, print it as a hex escape. */
@ -236,6 +238,7 @@ print_wchar (gdb_wint_t w, const gdb_byte *orig, int orig_len,
while (i < orig_len)
{
char octal[5];
sprintf (octal, "\\%.3o", orig[i] & 0xff);
append_string_as_wide (octal, output);
++i;
@ -424,6 +427,7 @@ c_printstr (struct ui_file *stream, struct type *type, const gdb_byte *string,
if (length == -1)
{
unsigned long current_char = 1;
for (i = 0; current_char; ++i)
{
QUIT;
@ -504,6 +508,7 @@ c_printstr (struct ui_file *stream, struct type *type, const gdb_byte *string,
/* Painful gyrations. */
int j;
char *s = xstrprintf (_(" <repeats %u times>"), reps);
for (j = 0; s[j]; ++j)
{
gdb_wchar_t w = gdb_btowc (s[j]);
@ -881,6 +886,7 @@ convert_escape (struct type *type, const char *dest_charset,
case 'U':
{
int length = *p == 'u' ? 4 : 8;
ADVANCE;
if (!isxdigit (*p))
error (_("\\u used with no following hex digits"));
@ -908,6 +914,7 @@ parse_one_string (struct obstack *output, char *data, int len,
while (data < limit)
{
char *p = data;
/* Look for next escape, or the end of the input. */
while (p < limit && *p != '\\')
++p;
@ -1021,6 +1028,7 @@ evaluate_subexp_c (struct type *expect_type, struct expression *exp,
else
{
int i;
/* Write the terminating character. */
for (i = 0; i < TYPE_LENGTH (type); ++i)
obstack_1grow (&output, 0);
@ -1107,6 +1115,7 @@ c_language_arch_info (struct gdbarch *gdbarch,
struct language_arch_info *lai)
{
const struct builtin_type *builtin = builtin_type (gdbarch);
lai->string_char_type = builtin->builtin_char;
lai->primitive_type_vector
= GDBARCH_OBSTACK_CALLOC (gdbarch, nr_c_primitive_types + 1,
@ -1213,6 +1222,7 @@ cplus_language_arch_info (struct gdbarch *gdbarch,
struct language_arch_info *lai)
{
const struct builtin_type *builtin = builtin_type (gdbarch);
lai->string_char_type = builtin->builtin_char;
lai->primitive_type_vector
= GDBARCH_OBSTACK_CALLOC (gdbarch, nr_cplus_primitive_types + 1,

View File

@ -233,6 +233,7 @@ c_type_print_varspec_prefix (struct type *type, struct ui_file *stream,
int show, int passed_a_ptr, int need_post_space)
{
char *name;
if (type == 0)
return;
@ -919,6 +920,7 @@ c_type_print_base (struct type *type, struct ui_file *stream, int show,
struct fn_field *f = TYPE_FN_FIELDLIST1 (type, i);
int len2 = TYPE_FN_FIELDLIST_LENGTH (type, i);
int j;
for (j = 0; j < len2; j++)
if (!TYPE_FN_FIELD_ARTIFICIAL (f, j))
real_len++;
@ -934,13 +936,14 @@ c_type_print_base (struct type *type, struct ui_file *stream, int show,
char *method_name = TYPE_FN_FIELDLIST_NAME (type, i);
char *name = type_name_no_tag (type);
int is_constructor = name && strcmp (method_name, name) == 0;
for (j = 0; j < len2; j++)
{
char *physname = TYPE_FN_FIELD_PHYSNAME (f, j);
int is_full_physname_constructor =
is_constructor_name (physname)
|| is_destructor_name (physname)
|| method_name[0] == '~';
is_constructor_name (physname)
|| is_destructor_name (physname)
|| method_name[0] == '~';
/* Do not print out artificial methods. */
if (TYPE_FN_FIELD_ARTIFICIAL (f, j))
@ -1013,6 +1016,7 @@ c_type_print_base (struct type *type, struct ui_file *stream, int show,
{
int staticp = TYPE_FN_FIELD_STATIC_P (f, j);
struct type *mtype = TYPE_FN_FIELD_TYPE (f, j);
cp_type_print_method_args (mtype,
"",
method_name,
@ -1034,6 +1038,7 @@ c_type_print_base (struct type *type, struct ui_file *stream, int show,
if (p != NULL)
{
int length = p - demangled_no_class;
demangled_no_static = (char *) xmalloc (length + 1);
strncpy (demangled_no_static, demangled_no_class, length);
*(demangled_no_static + length) = '\0';

View File

@ -254,6 +254,7 @@ c_val_print (struct type *type, const gdb_byte *valaddr, int embedded_offset,
-fvtable_thunks. (Otherwise, look under TYPE_CODE_STRUCT.) */
CORE_ADDR addr
= extract_typed_address (valaddr + embedded_offset, type);
print_function_pointer_address (gdbarch, addr, stream,
options->addressprint);
break;
@ -343,6 +344,7 @@ c_val_print (struct type *type, const gdb_byte *valaddr, int embedded_offset,
{
CORE_ADDR addr
= extract_typed_address (valaddr + embedded_offset, type);
fprintf_filtered (stream, "@");
fputs_filtered (paddress (gdbarch, addr), stream);
if (options->deref_ref)
@ -354,9 +356,10 @@ c_val_print (struct type *type, const gdb_byte *valaddr, int embedded_offset,
if (TYPE_CODE (elttype) != TYPE_CODE_UNDEF)
{
struct value *deref_val =
value_at
(TYPE_TARGET_TYPE (type),
unpack_pointer (type, valaddr + embedded_offset));
value_at
(TYPE_TARGET_TYPE (type),
unpack_pointer (type, valaddr + embedded_offset));
common_val_print (deref_val, stream, recurse, options,
current_language);
}
@ -481,6 +484,7 @@ c_val_print (struct type *type, const gdb_byte *valaddr, int embedded_offset,
if (options->format || options->output_format)
{
struct value_print_options opts = *options;
opts.format = (options->format ? options->format
: options->output_format);
print_scalar_formatted (valaddr + embedded_offset, type,

View File

@ -167,6 +167,7 @@ iconv (iconv_t utf_flag, const char **inbuf, size_t *inbytesleft,
/* In all other cases we simply copy input bytes to the
output. */
size_t amt = *inbytesleft;
if (amt > *outbytesleft)
amt = *outbytesleft;
memcpy (*outbuf, *inbuf, amt);
@ -312,6 +313,7 @@ validate (struct gdbarch *gdbarch)
const char *host_cset = host_charset ();
const char *target_cset = target_charset (gdbarch);
const char *target_wide_cset = target_wide_charset_name;
if (!strcmp (target_wide_cset, "auto"))
target_wide_cset = gdbarch_auto_wide_charset (gdbarch);
@ -634,10 +636,10 @@ wchar_iterate (struct wchar_iterator *iter,
size_t orig_in = iter->bytes;
size_t out_avail = out_request * sizeof (gdb_wchar_t);
size_t num;
size_t r = iconv (iter->desc,
(ICONV_CONST char **) &iter->input, &iter->bytes,
&outptr, &out_avail);
if (r == (size_t) -1)
{
switch (errno)

View File

@ -50,6 +50,7 @@ cli_table_begin (struct ui_out *uiout, int nbrofcols,
const char *tblid)
{
cli_out_data *data = ui_out_data (uiout);
if (nr_rows == 0)
data->suppress_output = 1;
else
@ -64,6 +65,7 @@ static void
cli_table_body (struct ui_out *uiout)
{
cli_out_data *data = ui_out_data (uiout);
if (data->suppress_output)
return;
/* first, close the table header line */
@ -76,6 +78,7 @@ static void
cli_table_end (struct ui_out *uiout)
{
cli_out_data *data = ui_out_data (uiout);
data->suppress_output = 0;
}
@ -87,6 +90,7 @@ cli_table_header (struct ui_out *uiout, int width, enum ui_align alignment,
const char *colhdr)
{
cli_out_data *data = ui_out_data (uiout);
if (data->suppress_output)
return;
@ -104,6 +108,7 @@ cli_begin (struct ui_out *uiout,
const char *id)
{
cli_out_data *data = ui_out_data (uiout);
if (data->suppress_output)
return;
}
@ -116,6 +121,7 @@ cli_end (struct ui_out *uiout,
int level)
{
cli_out_data *data = ui_out_data (uiout);
if (data->suppress_output)
return;
}
@ -127,9 +133,9 @@ cli_field_int (struct ui_out *uiout, int fldno, int width,
enum ui_align alignment,
const char *fldname, int value)
{
char buffer[20]; /* FIXME: how many chars long a %d can become? */
char buffer[20]; /* FIXME: how many chars long a %d can become? */
cli_out_data *data = ui_out_data (uiout);
if (data->suppress_output)
return;
sprintf (buffer, "%d", value);
@ -147,6 +153,7 @@ cli_field_skip (struct ui_out *uiout, int fldno, int width,
const char *fldname)
{
cli_out_data *data = ui_out_data (uiout);
if (data->suppress_output)
return;
@ -168,8 +175,8 @@ cli_field_string (struct ui_out *uiout,
{
int before = 0;
int after = 0;
cli_out_data *data = ui_out_data (uiout);
if (data->suppress_output)
return;
@ -217,6 +224,7 @@ cli_field_fmt (struct ui_out *uiout, int fldno,
va_list args)
{
cli_out_data *data = ui_out_data (uiout);
if (data->suppress_output)
return;
@ -230,6 +238,7 @@ static void
cli_spaces (struct ui_out *uiout, int numspaces)
{
cli_out_data *data = ui_out_data (uiout);
if (data->suppress_output)
return;
print_spaces_filtered (numspaces, data->stream);
@ -239,6 +248,7 @@ static void
cli_text (struct ui_out *uiout, const char *string)
{
cli_out_data *data = ui_out_data (uiout);
if (data->suppress_output)
return;
fputs_filtered (string, data->stream);
@ -249,6 +259,7 @@ cli_message (struct ui_out *uiout, int verbosity,
const char *format, va_list args)
{
cli_out_data *data = ui_out_data (uiout);
if (data->suppress_output)
return;
if (ui_out_get_verblvl (uiout) >= verbosity)
@ -259,6 +270,7 @@ static void
cli_wrap_hint (struct ui_out *uiout, char *identstring)
{
cli_out_data *data = ui_out_data (uiout);
if (data->suppress_output)
return;
wrap_here (identstring);
@ -268,6 +280,7 @@ static void
cli_flush (struct ui_out *uiout)
{
cli_out_data *data = ui_out_data (uiout);
gdb_flush (data->stream);
}
@ -275,6 +288,7 @@ static int
cli_redirect (struct ui_out *uiout, struct ui_file *outstream)
{
cli_out_data *data = ui_out_data (uiout);
if (outstream != NULL)
{
data->original_stream = data->stream;
@ -315,6 +329,7 @@ static void
field_separator (void)
{
cli_out_data *data = ui_out_data (uiout);
fputc_filtered (' ', data->stream);
}
@ -360,8 +375,8 @@ struct ui_out *
cli_out_new (struct ui_file *stream)
{
int flags = ui_source_list;
cli_out_data *data = XMALLOC (cli_out_data);
cli_out_data_ctor (data, stream);
return ui_out_new (&cli_ui_out_impl, data, flags);
}
@ -371,6 +386,7 @@ cli_out_set_stream (struct ui_out *uiout, struct ui_file *stream)
{
cli_out_data *data = ui_out_data (uiout);
struct ui_file *old = data->stream;
data->stream = stream;
return old;
}

View File

@ -260,6 +260,7 @@ static void
find_targ_sec (bfd *abfd, asection *sect, void *obj)
{
struct find_targ_sec_arg *args = (struct find_targ_sec_arg *) obj;
if (sect->target_index == args->targ_index)
*args->resultp = sect;
}
@ -282,6 +283,7 @@ static int
cs_to_section (struct coff_symbol *cs, struct objfile *objfile)
{
asection *sect = cs_to_bfd_section (cs, objfile);
if (sect == NULL)
return SECT_OFF_TEXT (objfile);
return sect->index;
@ -414,6 +416,7 @@ record_minimal_symbol (struct coff_symbol *cs, CORE_ADDR address,
struct objfile *objfile)
{
struct bfd_section *bfd_section;
/* We don't want TDESC entry points in the minimal symbol table */
if (cs->c_name[0] == '@')
return NULL;
@ -644,6 +647,7 @@ coff_symfile_read (struct objfile *objfile, int symfile_flags)
if (debugfile)
{
bfd *abfd = symfile_bfd_open (debugfile);
symbol_file_add_separate (abfd, symfile_flags, objfile);
xfree (debugfile);
}
@ -779,6 +783,7 @@ coff_symtab_read (long symtab_offset, unsigned int nsyms,
{
/* Record all functions -- external and static -- in minsyms. */
int section = cs_to_section (cs, objfile);
tmpaddr = cs->c_value + ANOFFSET (objfile->section_offsets, SECT_OFF_TEXT (objfile));
record_minimal_symbol (cs, tmpaddr, mst_text, section, objfile);
@ -884,6 +889,7 @@ coff_symtab_read (long symtab_offset, unsigned int nsyms,
/* This is a common symbol. See if the target
environment knows where it has been relocated to. */
CORE_ADDR reladdr;
if (target_lookup_symbol (cs->c_name, &reladdr))
{
/* Error in lookup; ignore symbol. */
@ -908,6 +914,7 @@ coff_symtab_read (long symtab_offset, unsigned int nsyms,
else
{
asection *bfd_section = cs_to_bfd_section (cs, objfile);
sec = cs_to_section (cs, objfile);
tmpaddr = cs->c_value;
/* Statics in a PE file also get relocated */
@ -949,6 +956,7 @@ coff_symtab_read (long symtab_offset, unsigned int nsyms,
if (SDB_TYPE (cs->c_type))
{
struct symbol *sym;
sym = process_coff_symbol
(cs, &main_aux, objfile);
SYMBOL_VALUE (sym) = tmpaddr;
@ -1497,8 +1505,8 @@ process_coff_symbol (struct coff_symbol *cs,
struct objfile *objfile)
{
struct symbol *sym
= (struct symbol *) obstack_alloc (&objfile->objfile_obstack,
sizeof (struct symbol));
= (struct symbol *) obstack_alloc (&objfile->objfile_obstack,
sizeof (struct symbol));
char *name;
memset (sym, 0, sizeof (struct symbol));
@ -2098,6 +2106,7 @@ coff_read_enum_type (int index, int length, int lastsym,
for (; j < syms->nsyms; j++, n++)
{
struct symbol *xsym = syms->symbol[j];
SYMBOL_TYPE (xsym) = type;
TYPE_FIELD_NAME (type, n) = SYMBOL_LINKAGE_NAME (xsym);
SET_FIELD_BITPOS (TYPE_FIELD (type, n), SYMBOL_VALUE (xsym));

View File

@ -171,6 +171,7 @@ vcomplaint (struct complaints **c, const char *file, int line, const char *fmt,
struct complaints *complaints = get_complaints (c);
struct complain *complaint = find_complaint (complaints, file, line, fmt);
enum complaint_series series;
gdb_assert (complaints != NULL);
complaint->counter++;
@ -243,6 +244,7 @@ void
complaint (struct complaints **complaints, const char *fmt, ...)
{
va_list args;
va_start (args, fmt);
vcomplaint (complaints, NULL/*file*/, 0/*line*/, fmt, args);
va_end (args);

View File

@ -126,6 +126,7 @@ filename_completer (struct cmd_list_element *ignore, char *text, char *word)
while (1)
{
char *p, *q;
p = rl_filename_completion_function (text, subsequent_name);
if (return_val_used >= return_val_alloced)
{
@ -389,6 +390,7 @@ add_struct_fields (struct type *type, int *nextp, char **output,
for (i = TYPE_NFN_FIELDS (type) - 1; i >= 0; --i)
{
char *name = TYPE_FN_FIELDLIST_NAME (type, i);
if (name && ! strncmp (name, fieldname, namelen))
{
if (!computed_type_name)
@ -783,7 +785,8 @@ command_completer (struct cmd_list_element *ignore, char *text, char *word)
char *
gdb_completion_word_break_characters (void)
{
char ** list;
char **list;
list = complete_line_internal (rl_line_buffer, rl_line_buffer, rl_point,
handle_brkchars);
gdb_assert (list == NULL);

View File

@ -232,6 +232,7 @@ void
read_memory (CORE_ADDR memaddr, gdb_byte *myaddr, int len)
{
int status;
status = target_read_memory (memaddr, myaddr, len);
if (status != 0)
memory_error (status, memaddr);
@ -243,6 +244,7 @@ void
read_stack (CORE_ADDR memaddr, gdb_byte *myaddr, int len)
{
int status;
status = target_read_stack (memaddr, myaddr, len);
if (status != 0)
memory_error (status, memaddr);
@ -286,11 +288,13 @@ do_captured_read_memory_integer (void *data)
if successful. */
int
safe_read_memory_integer (CORE_ADDR memaddr, int len, enum bfd_endian byte_order,
safe_read_memory_integer (CORE_ADDR memaddr, int len,
enum bfd_endian byte_order,
LONGEST *return_value)
{
int status;
struct captured_read_memory_integer_arguments args;
args.memaddr = memaddr;
args.len = len;
args.byte_order = byte_order;
@ -352,6 +356,7 @@ CORE_ADDR
read_memory_typed_address (CORE_ADDR addr, struct type *type)
{
gdb_byte *buf = alloca (TYPE_LENGTH (type));
read_memory (addr, buf, TYPE_LENGTH (type));
return extract_typed_address (buf, type);
}
@ -361,6 +366,7 @@ void
write_memory (CORE_ADDR memaddr, const bfd_byte *myaddr, int len)
{
int status;
status = target_write_memory (memaddr, myaddr, len);
if (status != 0)
memory_error (status, memaddr);
@ -368,20 +374,24 @@ write_memory (CORE_ADDR memaddr, const bfd_byte *myaddr, int len)
/* Store VALUE at ADDR in the inferior as a LEN-byte unsigned integer. */
void
write_memory_unsigned_integer (CORE_ADDR addr, int len, enum bfd_endian byte_order,
write_memory_unsigned_integer (CORE_ADDR addr, int len,
enum bfd_endian byte_order,
ULONGEST value)
{
gdb_byte *buf = alloca (len);
store_unsigned_integer (buf, len, byte_order, value);
write_memory (addr, buf, len);
}
/* Store VALUE at ADDR in the inferior as a LEN-byte signed integer. */
void
write_memory_signed_integer (CORE_ADDR addr, int len, enum bfd_endian byte_order,
write_memory_signed_integer (CORE_ADDR addr, int len,
enum bfd_endian byte_order,
LONGEST value)
{
gdb_byte *buf = alloca (len);
store_signed_integer (buf, len, byte_order, value);
write_memory (addr, buf, len);
}
@ -424,6 +434,7 @@ void
_initialize_core (void)
{
struct cmd_list_element *c;
c = add_cmd ("core-file", class_files, core_file_command, _("\
Use FILE as core dump for examining memory and registers.\n\
No arg means have no core file. This command has been superseded by the\n\

View File

@ -418,6 +418,7 @@ core_open (char *filename, int from_tty)
usually happen, but we're dealing with input here, which can
always be broken in different ways. */
struct thread_info *thread = first_thread_of_process (-1);
if (thread == NULL)
{
inferior_appeared (current_inferior (), CORELOW_PID);
@ -764,8 +765,8 @@ core_xfer_partial (struct target_ops *ops, enum target_object object,
struct bfd_section *section;
bfd_size_type size;
char sectionstr[100];
xsnprintf (sectionstr, sizeof sectionstr, "SPU/%s", annex);
section = bfd_get_section_by_name (core_bfd, sectionstr);
@ -792,6 +793,7 @@ core_xfer_partial (struct target_ops *ops, enum target_object object,
{
/* NULL annex requests list of all present spuids. */
struct spuid_list list;
list.buf = readbuf;
list.offset = offset;
list.len = len;
@ -856,6 +858,7 @@ core_pid_to_str (struct target_ops *ops, ptid_t ptid)
&& gdbarch_core_pid_to_str_p (core_gdbarch))
{
char *ret = gdbarch_core_pid_to_str (core_gdbarch, ptid);
if (ret != NULL)
return ret;
}

View File

@ -92,6 +92,7 @@ value_rtti_type (struct value *v, int *full, int *top, int *using_enc)
{
struct type *ret = NULL;
struct gdb_exception e;
if ((current_cp_abi.rtti_type) == NULL)
return NULL;
TRY_CATCH (e, RETURN_MASK_ERROR)
@ -238,8 +239,8 @@ list_cp_abis (int from_tty)
{
struct cleanup *cleanup_chain;
int i;
ui_out_text (uiout, "The available C++ ABIs are:\n");
ui_out_text (uiout, "The available C++ ABIs are:\n");
cleanup_chain = make_cleanup_ui_out_tuple_begin_end (uiout, "cp-abi-list");
for (i = 0; i < num_cp_abis; i++)
{

View File

@ -264,6 +264,7 @@ cp_lookup_symbol_in_namespace (const char *namespace,
{
char *concatenated_name = alloca (strlen (namespace) + 2 +
strlen (name) + 1);
strcpy (concatenated_name, namespace);
strcat (concatenated_name, "::");
strcat (concatenated_name, name);
@ -577,6 +578,7 @@ cp_lookup_nested_type (struct type *parent_type,
nested_name,
block,
VAR_DOMAIN);
if (sym == NULL || SYMBOL_CLASS (sym) != LOC_TYPEDEF)
return NULL;
else
@ -644,6 +646,7 @@ cp_lookup_transparent_type_loop (const char *name, const char *scope,
{
struct type *retval
= cp_lookup_transparent_type_loop (name, scope, scope_length + 2);
if (retval != NULL)
return retval;
}
@ -876,6 +879,7 @@ static void
maintenance_cplus_namespace (char *args, int from_tty)
{
struct objfile *objfile;
printf_unfiltered (_("Possible namespaces:\n"));
ALL_OBJFILES (objfile)
{

View File

@ -715,13 +715,13 @@ static void
make_symbol_overload_list_namespace (const char *func_name,
const char *namespace)
{
if (namespace[0] == '\0')
make_symbol_overload_list_qualified (func_name);
else
{
char *concatenated_name
= alloca (strlen (namespace) + 2 + strlen (func_name) + 1);
strcpy (concatenated_name, namespace);
strcat (concatenated_name, "::");
strcat (concatenated_name, func_name);
@ -996,18 +996,20 @@ cp_validate_operator (const char *input)
if (strncmp (p, "operator", 8) == 0)
{
int valid = 0;
p += 8;
p += 8;
SKIP_SPACE (p);
for (i = 0; i < sizeof (operator_tokens) / sizeof (operator_tokens[0]);
++i)
{
int length = strlen (operator_tokens[i]);
/* By using strncmp here, we MUST have operator_tokens ordered!
See additional notes where operator_tokens is defined above. */
if (strncmp (p, operator_tokens[i], length) == 0)
{
const char *op = p;
valid = 1;
p += length;

View File

@ -198,6 +198,7 @@ cp_print_value_fields (struct type *type, struct type *real_type,
{
stat_array_obstack_initial_size =
obstack_object_size (&dont_print_stat_array_obstack);
last_set_recurse = recurse;
}
}
@ -280,6 +281,7 @@ cp_print_value_fields (struct type *type, struct type *real_type,
else
{
struct value_print_options opts = *options;
opts.deref_ref = 0;
v = value_from_longest
(TYPE_FIELD_TYPE (type, i),
@ -298,6 +300,7 @@ cp_print_value_fields (struct type *type, struct type *real_type,
else if (field_is_static (&TYPE_FIELD (type, i)))
{
struct value *v = value_static_field (type, i);
if (v == NULL)
fputs_filtered ("<optimized out>", stream);
else
@ -307,6 +310,7 @@ cp_print_value_fields (struct type *type, struct type *real_type,
else
{
struct value_print_options opts = *options;
opts.deref_ref = 0;
val_print (TYPE_FIELD_TYPE (type, i),
valaddr, offset + TYPE_FIELD_BITPOS (type, i) / 8,
@ -374,7 +378,8 @@ cp_print_value_fields_rtti (struct type *type,
CORE_ADDR address,
struct ui_file *stream, int recurse,
const struct value_print_options *options,
struct type **dont_print_vb, int dont_print_statmem)
struct type **dont_print_vb,
int dont_print_statmem)
{
struct value *value;
int full, top, using_enc;
@ -462,6 +467,7 @@ cp_print_value (struct type *type, struct type *real_type,
{
/* FIXME (alloca): unsafe if baseclass is really really large. */
gdb_byte *buf = alloca (TYPE_LENGTH (baseclass));
base_valaddr = buf;
if (target_read_memory (address + boffset, buf,
TYPE_LENGTH (baseclass)) != 0)
@ -697,6 +703,7 @@ cp_print_class_member (const gdb_byte *valaddr, struct type *type,
if (domain != NULL)
{
char *name;
fputs_filtered (prefix, stream);
name = type_name_no_tag (domain);
if (name)