From 72723f78cc511d0ea209805bcde2d3b4ba11616c Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Thu, 29 Jun 2023 19:38:10 -0600 Subject: [PATCH] Fix regressions caused by agent expression C++-ification Simon pointed out that my agent expression C++-ification patches caused a regression with the native-gdbserver target board. The bug is that append_const is supposed to write in big-endian order, but I switched this by mistake. --- gdb/ax-general.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gdb/ax-general.c b/gdb/ax-general.c index 26a27a0bcad..24101c63749 100644 --- a/gdb/ax-general.c +++ b/gdb/ax-general.c @@ -41,11 +41,11 @@ static void generic_ext (struct agent_expr *x, enum agent_op op, int n); static void append_const (struct agent_expr *x, LONGEST val, int n) { - int i; - - for (i = n - 1; i >= 0; i--) + size_t len = x->buf.size (); + x->buf.resize (len + n); + for (int i = n - 1; i >= 0; i--) { - x->buf.push_back (val & 0xff); + x->buf[len + i] = val & 0xff; val >>= 8; } } -- 2.30.2