Use std::vector in gdb_bfd_data

This changes gdb_bfd_data to use std::vector rather than VEC.

ChangeLog
2017-10-20  Tom Tromey  <tom@tromey.com>

	* gdb_bfd.c (struct gdb_bfd_data) <included_bfds>: Now a
	std::vector.
	(gdb_bfd_record_inclusion): Update.
	(bfdp): Remove typedef.
This commit is contained in:
Tom Tromey 2017-10-15 11:31:46 -06:00
parent 06d5bbc8e5
commit d5833c62d9
2 changed files with 9 additions and 14 deletions

View File

@ -1,3 +1,10 @@
2017-10-20 Tom Tromey <tom@tromey.com>
* gdb_bfd.c (struct gdb_bfd_data) <included_bfds>: Now a
std::vector.
(gdb_bfd_record_inclusion): Update.
(bfdp): Remove typedef.
2017-10-20 Tom Tromey <tom@tromey.com>
* gdb_bfd.c (gdb_bfd_ref): Use new.

View File

@ -34,9 +34,6 @@
#include "gdb/fileio.h"
#include "inferior.h"
typedef bfd *bfdp;
DEF_VEC_P (bfdp);
/* An object of this type is stored in the section's user data when
mapping a section. */
@ -87,14 +84,6 @@ struct gdb_bfd_data
~gdb_bfd_data ()
{
int ix;
bfd *included_bfd;
for (ix = 0;
VEC_iterate (bfdp, included_bfds, ix, included_bfd);
++ix)
gdb_bfd_unref (included_bfd);
VEC_free (bfdp, included_bfds);
}
/* The reference count. */
@ -130,7 +119,7 @@ struct gdb_bfd_data
bfd *archive_bfd = nullptr;
/* Table of all the bfds this bfd has included. */
VEC (bfdp) *included_bfds = nullptr;
std::vector<gdb_bfd_ref_ptr> included_bfds;
/* The registry. */
REGISTRY_FIELDS = {};
@ -875,9 +864,8 @@ gdb_bfd_record_inclusion (bfd *includer, bfd *includee)
{
struct gdb_bfd_data *gdata;
gdb_bfd_ref (includee);
gdata = (struct gdb_bfd_data *) bfd_usrdata (includer);
VEC_safe_push (bfdp, gdata->included_bfds, includee);
gdata->included_bfds.push_back (new_bfd_ref (includee));
}
/* See gdb_bfd.h. */