aboutsummaryrefslogtreecommitdiff
path: root/gdb/ax.h
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/ax.h')
-rw-r--r--gdb/ax.h15
1 files changed, 8 insertions, 7 deletions
diff --git a/gdb/ax.h b/gdb/ax.h
index 536efe8..4b90229 100644
--- a/gdb/ax.h
+++ b/gdb/ax.h
@@ -94,6 +94,11 @@ union agent_val
/* A buffer containing a agent expression. */
struct agent_expr
{
+ /* Construct an empty agent expression. */
+ explicit agent_expr (struct gdbarch *gdbarch, CORE_ADDR scope);
+
+ ~agent_expr ();
+
/* The bytes of the expression. */
unsigned char *buf;
@@ -162,6 +167,9 @@ struct agent_expr
int trace_string;
};
+/* An agent_expr owning pointer. */
+typedef gdb::unique_ptr<agent_expr> agent_expr_up;
+
/* Pointer to an agent_expr structure. */
typedef struct agent_expr *agent_expr_p;
@@ -183,13 +191,6 @@ enum agent_op
/* Functions for building expressions. */
-/* Allocate a new, empty agent expression. */
-extern struct agent_expr *new_agent_expr (struct gdbarch *, CORE_ADDR);
-
-/* Free a agent expression. */
-extern void free_agent_expr (struct agent_expr *);
-extern struct cleanup *make_cleanup_free_agent_expr (struct agent_expr *);
-
/* Append a raw byte to EXPR. */
extern void ax_raw_byte (struct agent_expr *expr, gdb_byte byte);