Convert dwarf2_section_buffer_overflow_complaint to a method

This changes dwarf2_section_buffer_overflow_complaint to be a method
on dwarf2_section_info.

gdb/ChangeLog
2020-03-26  Tom Tromey  <tom@tromey.com>

	* dwarf2/section.h (struct dwarf2_section_info)
	<overload_complaint>: Declare.
	(dwarf2_section_buffer_overflow_complaint): Don't declare.
	* dwarf2/section.c (dwarf2_section_info::overflow_complaint):
	Rename from dwarf2_section_buffer_overflow_complaint.
	* dwarf2/read.c (skip_one_die, partial_die_info::read)
	(skip_form_bytes, dwarf_decode_macro_bytes): Update.
This commit is contained in:
Tom Tromey 2020-03-26 09:28:08 -06:00
parent 3d27bbdb4b
commit a0194fa8f2
4 changed files with 21 additions and 11 deletions

View File

@ -1,3 +1,13 @@
2020-03-26 Tom Tromey <tom@tromey.com>
* dwarf2/section.h (struct dwarf2_section_info)
<overload_complaint>: Declare.
(dwarf2_section_buffer_overflow_complaint): Don't declare.
* dwarf2/section.c (dwarf2_section_info::overflow_complaint):
Rename from dwarf2_section_buffer_overflow_complaint.
* dwarf2/read.c (skip_one_die, partial_die_info::read)
(skip_form_bytes, dwarf_decode_macro_bytes): Update.
2020-03-26 Tom Tromey <tom@tromey.com>
* dwarf2/section.h (dwarf2_section_buffer_overflow_complaint):

View File

@ -8595,7 +8595,7 @@ skip_one_die (const struct die_reader_specs *reader, const gdb_byte *info_ptr,
if (sibling_ptr < info_ptr)
complaint (_("DW_AT_sibling points backwards"));
else if (sibling_ptr > reader->buffer_end)
dwarf2_section_buffer_overflow_complaint (reader->die_section);
reader->die_section->overflow_complaint ();
else
return sibling_ptr;
}
@ -18079,7 +18079,7 @@ partial_die_info::read (const struct die_reader_specs *reader,
if (sibling_ptr < info_ptr)
complaint (_("DW_AT_sibling points backwards"));
else if (sibling_ptr > reader->buffer_end)
dwarf2_section_buffer_overflow_complaint (reader->die_section);
reader->die_section->overflow_complaint ();
else
sibling = sibling_ptr;
}
@ -23329,7 +23329,7 @@ skip_form_bytes (bfd *abfd, const gdb_byte *bytes, const gdb_byte *buffer_end,
bytes = gdb_skip_leb128 (bytes, buffer_end);
if (bytes == NULL)
{
dwarf2_section_buffer_overflow_complaint (section);
section->overflow_complaint ();
return NULL;
}
break;
@ -23492,7 +23492,7 @@ dwarf_decode_macro_bytes (struct dwarf2_per_objfile *dwarf2_per_objfile,
/* Do we at least have room for a macinfo type byte? */
if (mac_ptr >= mac_end)
{
dwarf2_section_buffer_overflow_complaint (section);
section->overflow_complaint ();
break;
}
@ -23645,7 +23645,7 @@ dwarf_decode_macro_bytes (struct dwarf2_per_objfile *dwarf2_per_objfile,
/* Do we at least have room for a macinfo type byte? */
if (mac_ptr >= mac_end)
{
dwarf2_section_buffer_overflow_complaint (section);
section->overflow_complaint ();
return;
}

View File

@ -31,12 +31,11 @@
#include "complaints.h"
void
dwarf2_section_buffer_overflow_complaint (struct dwarf2_section_info *section)
dwarf2_section_info::overflow_complaint () const
{
complaint (_("debug info runs off end of %s section"
" [in module %s]"),
section->get_name (),
section->get_file_name ());
get_name (), get_file_name ());
}
struct dwarf2_section_info *

View File

@ -94,6 +94,10 @@ struct dwarf2_section_info
return size;
}
/* Issue a complaint that something was outside the bounds of this
buffer. */
void overflow_complaint () const;
union
{
/* If this is a real section, the bfd section. */
@ -116,7 +120,4 @@ struct dwarf2_section_info
bool is_virtual;
};
extern void dwarf2_section_buffer_overflow_complaint
(struct dwarf2_section_info *section);
#endif /* GDB_DWARF2_SECTION_H */