diff options
Diffstat (limited to 'gdb/gdbserver')
-rw-r--r-- | gdb/gdbserver/ChangeLog | 9 | ||||
-rw-r--r-- | gdb/gdbserver/tdesc.c | 13 | ||||
-rw-r--r-- | gdb/gdbserver/tdesc.h | 2 |
3 files changed, 13 insertions, 11 deletions
diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog index 8e6afef..8e0f13a 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,3 +1,12 @@ +2018-03-30 Simon Marchi <simon.marchi@polymtl.ca> + + * tdesc.h (struct target_desc) <features>: Change type to + std::vector<std::string>. + * tdesc.c (target_desc::~target_desc): Adjust to std::vector + changes. + (tdesc_get_features_xml): Likewise. + (tdesc_create_feature): Likewise. + 2018-03-26 Alan Hayward <alan.hayward@arm.com> * regcache.c (find_register_by_number): Return a ref. diff --git a/gdb/gdbserver/tdesc.c b/gdb/gdbserver/tdesc.c index cec7a66..9f00ecf 100644 --- a/gdb/gdbserver/tdesc.c +++ b/gdb/gdbserver/tdesc.c @@ -27,12 +27,6 @@ target_desc::~target_desc () xfree ((char *) arch); xfree ((char *) osabi); - - char *f; - - for (i = 0; VEC_iterate (char_ptr, features, i, f); i++) - xfree (f); - VEC_free (char_ptr, features); } bool target_desc::operator== (const target_desc &other) const @@ -127,7 +121,7 @@ tdesc_get_features_xml (target_desc *tdesc) { /* Either .xmltarget or .features is not NULL. */ gdb_assert (tdesc->xmltarget != NULL - || (tdesc->features != NULL + || (!tdesc->features.empty () && tdesc->arch != NULL)); if (tdesc->xmltarget == NULL) @@ -147,9 +141,8 @@ tdesc_get_features_xml (target_desc *tdesc) buffer += "</osabi>"; } - char *xml; - for (int i = 0; VEC_iterate (char_ptr, tdesc->features, i, xml); i++) + for (const std::string &xml : tdesc->features) { buffer += "<xi:include href=\""; buffer += xml; @@ -175,7 +168,7 @@ tdesc_create_feature (struct target_desc *tdesc, const char *name, const char *xml) { #ifndef IN_PROCESS_AGENT - VEC_safe_push (char_ptr, tdesc->features, xstrdup (xml)); + tdesc->features.emplace_back (xml); #endif return tdesc; } diff --git a/gdb/gdbserver/tdesc.h b/gdb/gdbserver/tdesc.h index a625443..85139d9 100644 --- a/gdb/gdbserver/tdesc.h +++ b/gdb/gdbserver/tdesc.h @@ -54,7 +54,7 @@ struct target_desc : tdesc_feature const char *xmltarget = NULL; /* XML features in this target description. */ - VEC (char_ptr) *features = NULL; + std::vector<std::string> features; /* The value of <architecture> element in the XML, replying GDB. */ const char *arch = NULL; |