diff options
author | Simon Marchi <simon.marchi@polymtl.ca> | 2015-10-27 09:33:29 -0400 |
---|---|---|
committer | Simon Marchi <simon.marchi@polymtl.ca> | 2015-10-27 09:33:29 -0400 |
commit | 70b8286a9749deb6639c2fd5b39c7e4a26195738 (patch) | |
tree | b309a136d583646c6017b54e7c4d926c1d854303 /gdb/ax-general.c | |
parent | a480de357b17b1b2057b8375284079ccafae39db (diff) | |
download | binutils-gdb-70b8286a9749deb6639c2fd5b39c7e4a26195738.tar.gz |
Introduce ax_raw_byte and use it
This patch was taken directly from Pedro's branch.
ax_simple is used to append an agent expression operator to an agent
expression string. Therefore, it takes an enum agent_op as input.
There is an instance where it's called to append a raw byte, unrelated
to the enum. It makes the build fail in C++ mode.
This patch introduces ax_raw_byte for that purpose and uses it.
gdb/ChangeLog:
* ax.h (ax_raw_byte): New declaration.
* ax-general.c (ax_raw_byte): New function.
(ax_simple): Use ax_raw_byte.
* ax-gdb.c (gen_printf): Likewise.
Diffstat (limited to 'gdb/ax-general.c')
-rw-r--r-- | gdb/ax-general.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/gdb/ax-general.c b/gdb/ax-general.c index e5dc240576a..5c8a25bb3a0 100644 --- a/gdb/ax-general.c +++ b/gdb/ax-general.c @@ -133,13 +133,20 @@ read_const (struct agent_expr *x, int o, int n) return accum; } +/* See ax.h. */ + +void +ax_raw_byte (struct agent_expr *x, gdb_byte byte) +{ + grow_expr (x, 1); + x->buf[x->len++] = byte; +} /* Append a simple operator OP to EXPR. */ void ax_simple (struct agent_expr *x, enum agent_op op) { - grow_expr (x, 1); - x->buf[x->len++] = op; + ax_raw_byte (x, op); } /* Append a pick operator to EXPR. DEPTH is the stack item to pick, |