This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On 2016-10-18 21:12, Pedro Alves wrote:
diff --git a/gdb/ax-general.c b/gdb/ax-general.c index 7f27a45..35225f6 100644 --- a/gdb/ax-general.c +++ b/gdb/ax-general.c @@ -37,52 +37,30 @@ static void generic_ext (struct agent_expr *x, enum agent_op op, int n); /* Functions for building expressions. */ -/* Allocate a new, empty agent expression. */ -struct agent_expr * -new_agent_expr (struct gdbarch *gdbarch, CORE_ADDR scope) +agent_expr::agent_expr (struct gdbarch *gdbarch, CORE_ADDR scope) { - struct agent_expr *x = XNEW (struct agent_expr); - - x->len = 0; - x->size = 1; /* Change this to a larger value once + this->len = 0; + this->size = 1; /* Change this to a larger value once reallocation code is tested. */ - x->buf = (unsigned char *) xmalloc (x->size); + this->buf = (unsigned char *) xmalloc (this->size); - x->gdbarch = gdbarch; - x->scope = scope; + this->gdbarch = gdbarch; + this->scope = scope; /* Bit vector for registers used. */ - x->reg_mask_len = 1; - x->reg_mask = XCNEWVEC (unsigned char, x->reg_mask_len); - - x->tracing = 0; - x->trace_string = 0; + this->reg_mask_len = 1; + this->reg_mask = XCNEWVEC (unsigned char, this->reg_mask_len); - return x; + this->tracing = 0; + this->trace_string = 0; }
In one of Tom's patches, you said to drop the "this->". Did you leave them here for clarity? Would you remove them if the structure was completely converted, with m_ prefixed members (given that the m_ prefix makes it clear enough that it's a member)?
@@ -12385,13 +12378,9 @@ force_breakpoint_reinsertion (struct bp_location *bl)that have already been marked. */ loc->condition_changed = condition_updated; - /* Free the agent expression bytecode as well. We will compute - it later on. */ - if (loc->cond_bytecode) - { - free_agent_expr (loc->cond_bytecode); - loc->cond_bytecode = NULL; - } + /* Release the agent expression bytecode as well. We will + compute it later on. */ + loc->cond_bytecode.reset ();
Why did you change Free for Release in the comment? Since release has a different meaning when using unique pointers, it sounds more confusing like this I think.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |