gdb: Change a VEC to std::vector in btrace.{c,h}
authorAndrew Burgess <andrew.burgess@embecosm.com>
Thu, 19 Sep 2019 17:17:59 +0000 (13:17 -0400)
committerAndrew Burgess <andrew.burgess@embecosm.com>
Wed, 2 Oct 2019 13:05:50 +0000 (14:05 +0100)
commit554ac434b02465f1fc925b0ae3393fb841e0d59c
tree0e897b27e89aee707954da34cedf0a95881f8e7f
parent46f29a9a260da1a03176682aff63bad03d8f2e8b
gdb: Change a VEC to std::vector in btrace.{c,h}

Replace a VEC with a std::vector in btrace.h, and update btrace.c to
match.  It is worth noting that this code appears to be currently
untested by the GDB testsuite.  I've tried to do a like for like
replacement when moving to std::vector, with minimal refactoring to
try and avoid introducing any bugs.

As the new vector is inside a union I've currently used a pointer to
vector, which makes the code slightly uglier than it might otherwise
be, but again, due to lack of testing I'm reluctant to start
refactoring the code in a big way.

gdb/ChangeLog:

* btrace.c (btrace_maint_clear): Update to handle change from VEC
to std::vector.
(btrace_maint_decode_pt): Likewise, and move allocation of the
vector outside of the loop.
(btrace_maint_update_packets): Update to handle change from VEC to
std::vector.
(btrace_maint_print_packets): Likewise.
(maint_info_btrace_cmd): Likewise.
* btrace.h: Remove use of DEF_VEC_O.
(typedef btrace_pt_packet_s): Delete.
(struct btrace_maint_info) <packets>: Change fromm VEC to
std::vector.
* gdbsupport/btrace-common.h: Remove 'vec.h' include.
gdb/ChangeLog
gdb/btrace.c
gdb/btrace.h
gdb/gdbsupport/btrace-common.h