aboutsummaryrefslogtreecommitdiff
path: root/gdb/tracepoint.h
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@polymtl.ca>2018-03-30 17:18:54 -0400
committerSimon Marchi <simon.marchi@polymtl.ca>2018-03-30 17:18:54 -0400
commita18ba4e4c9d64eeb2ea65e5315fbd8b4261a1756 (patch)
tree0305bf8d7650858d6095d28a0dd9c2d55e186562 /gdb/tracepoint.h
parenta7961323e2fce4f831e117cc43e20e5144192240 (diff)
downloadgdb-a18ba4e4c9d64eeb2ea65e5315fbd8b4261a1756.zip
gdb-a18ba4e4c9d64eeb2ea65e5315fbd8b4261a1756.tar.gz
gdb-a18ba4e4c9d64eeb2ea65e5315fbd8b4261a1756.tar.bz2
Use std::vector in uploaded_tp
This patch changes the VEC(char_ptr) fields in uploaded_tp to use std::vector<char *>. At first, I wanted to creep in more changes, like using std::string, but it was making the patch too big and less focused, so I decided to keep it to just that. It also looks like the strings in those vectors are never free'd. If so, we can fix that in another patch. gdb/ChangeLog: * tracepoint.h (struct uploaded_tp): Initialize fields. <actions, step_actions, cmd_strings>: Change type to std::vector<char *>. * tracepoint.c (get_uploaded_tp): Allocate with new. (free_uploaded_tps): Free with delete. (parse_tracepoint_definition): Adjust to std::vector change. * breakpoint.c (read_uploaded_action): Likewise. (create_tracepoint_from_upload): Likewise. * ctf.c (ctf_write_uploaded_tp): Likewise. (SET_ARRAY_FIELD): Likewise. * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
Diffstat (limited to 'gdb/tracepoint.h')
-rw-r--r--gdb/tracepoint.h32
1 files changed, 16 insertions, 16 deletions
diff --git a/gdb/tracepoint.h b/gdb/tracepoint.h
index c82b62a..8613cb2 100644
--- a/gdb/tracepoint.h
+++ b/gdb/tracepoint.h
@@ -165,38 +165,38 @@ extern const char *stop_reason_names[];
struct uploaded_tp
{
- int number;
- enum bptype type;
- ULONGEST addr;
- int enabled;
- int step;
- int pass;
- int orig_size;
+ int number = 0;
+ enum bptype type = bp_none;
+ ULONGEST addr = 0;
+ int enabled = 0;
+ int step = 0;
+ int pass = 0;
+ int orig_size = 0;
/* String that is the encoded form of the tracepoint's condition. */
- char *cond;
+ char *cond = nullptr;
/* Vectors of strings that are the encoded forms of a tracepoint's
actions. */
- VEC(char_ptr) *actions;
- VEC(char_ptr) *step_actions;
+ std::vector<char *> actions;
+ std::vector<char *> step_actions;
/* The original string defining the location of the tracepoint. */
- char *at_string;
+ char *at_string = nullptr;
/* The original string defining the tracepoint's condition. */
- char *cond_string;
+ char *cond_string = nullptr;
/* List of original strings defining the tracepoint's actions. */
- VEC(char_ptr) *cmd_strings;
+ std::vector<char *> cmd_strings;
/* The tracepoint's current hit count. */
- int hit_count;
+ int hit_count = 0;
/* The tracepoint's current traceframe usage. */
- ULONGEST traceframe_usage;
+ ULONGEST traceframe_usage = 0;
- struct uploaded_tp *next;
+ struct uploaded_tp *next = nullptr;
};
/* Struct recording info about trace state variables on the target. */