aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2020-03-26 09:28:08 -0600
committerTom Tromey <tom@tromey.com>2020-03-26 09:28:13 -0600
commita0194fa8f23c64bef0f4b4bb4a76e9c64f003169 (patch)
treef707b0027ddab724df2436ad766715004409eb40
parent3d27bbdb4bc02968ffd86c6b5c331d0e04bc3ed9 (diff)
downloadgdb-a0194fa8f23c64bef0f4b4bb4a76e9c64f003169.zip
gdb-a0194fa8f23c64bef0f4b4bb4a76e9c64f003169.tar.gz
gdb-a0194fa8f23c64bef0f4b4bb4a76e9c64f003169.tar.bz2
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.
-rw-r--r--gdb/ChangeLog10
-rw-r--r--gdb/dwarf2/read.c10
-rw-r--r--gdb/dwarf2/section.c5
-rw-r--r--gdb/dwarf2/section.h7
4 files changed, 21 insertions, 11 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index aa462ad..236f552 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,15 @@
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):
Declare.
* dwarf2/section.c (dwarf2_section_buffer_overflow_complaint):
diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c
index f42058f..f284d62 100644
--- a/gdb/dwarf2/read.c
+++ b/gdb/dwarf2/read.c
@@ -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;
}
diff --git a/gdb/dwarf2/section.c b/gdb/dwarf2/section.c
index 31cb8b9..9714368 100644
--- a/gdb/dwarf2/section.c
+++ b/gdb/dwarf2/section.c
@@ -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 *
diff --git a/gdb/dwarf2/section.h b/gdb/dwarf2/section.h
index f4ac9af..555efec 100644
--- a/gdb/dwarf2/section.h
+++ b/gdb/dwarf2/section.h
@@ -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 */