aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@polymtl.ca>2021-01-18 00:46:13 -0500
committerSimon Marchi <simon.marchi@polymtl.ca>2021-01-18 00:46:13 -0500
commitcecb19129054860e40d14c78af5c5ab06873e0ab (patch)
tree16f778b4f339b9dd58dbc2c037e09ebc7a432e06
parent44365e88c0e021a7f734e44aa845f1e96cd83389 (diff)
downloadfsf-binutils-gdb-cecb19129054860e40d14c78af5c5ab06873e0ab.zip
fsf-binutils-gdb-cecb19129054860e40d14c78af5c5ab06873e0ab.tar.gz
fsf-binutils-gdb-cecb19129054860e40d14c78af5c5ab06873e0ab.tar.bz2
gdb: const-ify unpack_* functions in remote.c
Const-ify the unpack_* functions, and then adjust the callers accordingly. gdb/ChangeLog: * remote.c (class remote_target) <remote_unpack_thread_info_response, parse_threadlist_response>: Constify parameter and/or return value and or local variable. (stub_unpack_int): Likewise. (unpack_nibble): Likewise. (unpack_byte): Likewise. (unpack_int): Likewise. (unpack_string): Likewise. (unpack_threadid): Likewise. (remote_target::remote_unpack_thread_info_response): Likewise. (remote_target::parse_threadlist_response): Likewise. Change-Id: Ibda75f664d6e3452df00f85af7134533049171b7
-rw-r--r--gdb/ChangeLog15
-rw-r--r--gdb/remote.c49
2 files changed, 39 insertions, 25 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 9ac7b46..e1bf156 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,18 @@
+2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * remote.c (class remote_target)
+ <remote_unpack_thread_info_response,
+ parse_threadlist_response>: Constify parameter and/or return
+ value and or local variable.
+ (stub_unpack_int): Likewise.
+ (unpack_nibble): Likewise.
+ (unpack_byte): Likewise.
+ (unpack_int): Likewise.
+ (unpack_string): Likewise.
+ (unpack_threadid): Likewise.
+ (remote_target::remote_unpack_thread_info_response): Likewise.
+ (remote_target::parse_threadlist_response): Likewise.
+
2021-01-15 Andrew Burgess <andrew.burgess@embecosm.com>
* tui/tui.c (tui_is_window_visible): Compare to nullptr, not 0.
diff --git a/gdb/remote.c b/gdb/remote.c
index 74ebbf9..1df05e6 100644
--- a/gdb/remote.c
+++ b/gdb/remote.c
@@ -793,12 +793,12 @@ public: /* Remote specific methods. */
char *write_ptid (char *buf, const char *endbuf, ptid_t ptid);
- int remote_unpack_thread_info_response (char *pkt, threadref *expectedref,
+ int remote_unpack_thread_info_response (const char *pkt, threadref *expectedref,
gdb_ext_thread_info *info);
int remote_get_threadinfo (threadref *threadid, int fieldset,
gdb_ext_thread_info *info);
- int parse_threadlist_response (char *pkt, int result_limit,
+ int parse_threadlist_response (const char *pkt, int result_limit,
threadref *original_echo,
threadref *resultlist,
int *doneflag);
@@ -1017,7 +1017,7 @@ static CORE_ADDR remote_address_masked (CORE_ADDR);
static void print_packet (const char *);
-static int stub_unpack_int (char *buff, int fieldlength);
+static int stub_unpack_int (const char *buff, int fieldlength);
struct packet_config;
@@ -2999,19 +2999,19 @@ struct gdb_ext_thread_info
#define BUF_THREAD_ID_SIZE (OPAQUETHREADBYTES * 2)
-static char *unpack_nibble (char *buf, int *val);
+static const char *unpack_nibble (const char *buf, int *val);
-static char *unpack_byte (char *buf, int *value);
+static const char *unpack_byte (const char *buf, int *value);
static char *pack_int (char *buf, int value);
-static char *unpack_int (char *buf, int *value);
+static const char *unpack_int (const char *buf, int *value);
-static char *unpack_string (char *src, char *dest, int length);
+static const char *unpack_string (const char *src, char *dest, int length);
static char *pack_threadid (char *pkt, threadref *id);
-static char *unpack_threadid (char *inbuf, threadref *id);
+static const char *unpack_threadid (const char *inbuf, threadref *id);
void int_to_threadref (threadref *id, int value);
@@ -3121,7 +3121,7 @@ stubhex (int ch)
}
static int
-stub_unpack_int (char *buff, int fieldlength)
+stub_unpack_int (const char *buff, int fieldlength)
{
int nibble;
int retval = 0;
@@ -3137,15 +3137,15 @@ stub_unpack_int (char *buff, int fieldlength)
return retval;
}
-static char *
-unpack_nibble (char *buf, int *val)
+static const char *
+unpack_nibble (const char *buf, int *val)
{
*val = fromhex (*buf++);
return buf;
}
-static char *
-unpack_byte (char *buf, int *value)
+static const char *
+unpack_byte (const char *buf, int *value)
{
*value = stub_unpack_int (buf, 2);
return buf + 2;
@@ -3161,8 +3161,8 @@ pack_int (char *buf, int value)
return buf;
}
-static char *
-unpack_int (char *buf, int *value)
+static const char *
+unpack_int (const char *buf, int *value)
{
*value = stub_unpack_int (buf, 8);
return buf + 8;
@@ -3192,8 +3192,8 @@ pack_string (char *pkt, char *string)
}
#endif /* 0 (unused) */
-static char *
-unpack_string (char *src, char *dest, int length)
+static const char *
+unpack_string (const char *src, char *dest, int length)
{
while (length--)
*dest++ = *src++;
@@ -3215,11 +3215,11 @@ pack_threadid (char *pkt, threadref *id)
}
-static char *
-unpack_threadid (char *inbuf, threadref *id)
+static const char *
+unpack_threadid (const char *inbuf, threadref *id)
{
char *altref;
- char *limit = inbuf + BUF_THREAD_ID_SIZE;
+ const char *limit = inbuf + BUF_THREAD_ID_SIZE;
int x, y;
altref = (char *) id;
@@ -3334,7 +3334,7 @@ pack_threadinfo_request (char *pkt, int mode, threadref *id)
the process. */
int
-remote_target::remote_unpack_thread_info_response (char *pkt,
+remote_target::remote_unpack_thread_info_response (const char *pkt,
threadref *expectedref,
gdb_ext_thread_info *info)
{
@@ -3342,7 +3342,7 @@ remote_target::remote_unpack_thread_info_response (char *pkt,
int mask, length;
int tag;
threadref ref;
- char *limit = pkt + rs->buf.size (); /* Plausible parsing limit. */
+ const char *limit = pkt + rs->buf.size (); /* Plausible parsing limit. */
int retval = 1;
/* info->threadid = 0; FIXME: implement zero_threadref. */
@@ -3465,18 +3465,17 @@ pack_threadlist_request (char *pkt, int startflag, int threadcount,
/* Encoding: 'q':8,'M':8,count:16,done:8,argthreadid:64,(threadid:64)* */
int
-remote_target::parse_threadlist_response (char *pkt, int result_limit,
+remote_target::parse_threadlist_response (const char *pkt, int result_limit,
threadref *original_echo,
threadref *resultlist,
int *doneflag)
{
struct remote_state *rs = get_remote_state ();
- char *limit;
int count, resultcount, done;
resultcount = 0;
/* Assume the 'q' and 'M chars have been stripped. */
- limit = pkt + (rs->buf.size () - BUF_THREAD_ID_SIZE);
+ const char *limit = pkt + (rs->buf.size () - BUF_THREAD_ID_SIZE);
/* done parse past here */
pkt = unpack_byte (pkt, &count); /* count field */
pkt = unpack_nibble (pkt, &done);