This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[RFA 3/4] Use gdb::def_vector in create_sals_line_offset
- From: Tom Tromey <tom at tromey dot com>
- To: gdb-patches at sourceware dot org
- Cc: Tom Tromey <tom at tromey dot com>
- Date: Fri, 8 Sep 2017 18:41:28 -0600
- Subject: [RFA 3/4] Use gdb::def_vector in create_sals_line_offset
- Authentication-results: sourceware.org; auth=none
- References: <20170909004129.28782-1-tom@tromey.com>
This changes create_sals_line_offset to use gdb::def_vector, removing
some cleanups.
gdb/ChangeLog
2017-09-08 Tom Tromey <tom@tromey.com>
* linespec.c (create_sals_line_offset): Use gdb::def_vector.
---
gdb/ChangeLog | 4 ++++
gdb/linespec.c | 11 +++--------
2 files changed, 7 insertions(+), 8 deletions(-)
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 1f8bb71..4f4b543 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,9 @@
2017-09-08 Tom Tromey <tom@tromey.com>
+ * linespec.c (create_sals_line_offset): Use gdb::def_vector.
+
+2017-09-08 Tom Tromey <tom@tromey.com>
+
* p-valprint.c (pascal_object_print_value): Use gdb::byte_vector.
2017-09-08 Tom Tromey <tom@tromey.com>
diff --git a/gdb/linespec.c b/gdb/linespec.c
index 4801808..abe6615 100644
--- a/gdb/linespec.c
+++ b/gdb/linespec.c
@@ -45,6 +45,7 @@
#include "stack.h"
#include "location.h"
#include "common/function-view.h"
+#include "common/def-vector.h"
/* An enumeration of the various things a user might attempt to
complete for a linespec location. */
@@ -2182,8 +2183,6 @@ create_sals_line_offset (struct linespec_state *self,
else
{
struct linetable_entry *best_entry = NULL;
- int *filter;
- const struct block **blocks;
int i, j;
std::vector<symtab_and_line> intermediate_results
@@ -2203,10 +2202,8 @@ create_sals_line_offset (struct linespec_state *self,
above, we see if there are other PCs that are in the same
block. If yes, the other PCs are filtered out. */
- filter = XNEWVEC (int, intermediate_results.size ());
- struct cleanup *cleanup = make_cleanup (xfree, filter);
- blocks = XNEWVEC (const struct block *, intermediate_results.size ());
- make_cleanup (xfree, blocks);
+ gdb::def_vector<int> filter (intermediate_results.size ());
+ gdb::def_vector<const block *> blocks (intermediate_results.size ());
for (i = 0; i < intermediate_results.size (); ++i)
{
@@ -2245,8 +2242,6 @@ create_sals_line_offset (struct linespec_state *self,
add_sal_to_sals (self, &values, &intermediate_results[i],
sym ? SYMBOL_NATURAL_NAME (sym) : NULL, 0);
}
-
- do_cleanups (cleanup);
}
if (values.empty ())
--
2.9.4