summaryrefslogtreecommitdiff
path: root/gdbsupport/common-utils.cc
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@efficios.com>2021-11-22 11:27:30 -0500
committerSimon Marchi <simon.marchi@polymtl.ca>2021-11-22 13:57:49 -0500
commit06de25b7af21eb1173d7b86c5c0f37aae5ec2674 (patch)
tree257ca777e7e7c96de2844956bb61256f1ed5e111 /gdbsupport/common-utils.cc
parent7dca2ea7ff4c2c786119e13e81a5e6b0c1bf1d2d (diff)
downloadbinutils-gdb-06de25b7af21eb1173d7b86c5c0f37aae5ec2674.tar.gz
gdb: introduce target_waitkind_str, use it in target_waitstatus::to_string
I would like to print target_waitkind values in debug messages, so I think that a target_waitkind-to-string function would be useful. While at it, use it in target_waitstatus::to_string. This changes the output of target_waitstatus::to_string a bit, but I think it is for the better. The debug messages will show a string matching exactly the target_waitkind enumerator (minus the TARGET_WAITKIND prefix). As a convenience, make string_appendf return the same reference to string it got as a parameter. This allows doing this: return string_appendf (str, "foo"); ... keeping the code concise. Change-Id: I383dffc9c78614e7d0668b1516073905e798eef7
Diffstat (limited to 'gdbsupport/common-utils.cc')
-rw-r--r--gdbsupport/common-utils.cc8
1 files changed, 6 insertions, 2 deletions
diff --git a/gdbsupport/common-utils.cc b/gdbsupport/common-utils.cc
index 42bce36e535..b591537e62e 100644
--- a/gdbsupport/common-utils.cc
+++ b/gdbsupport/common-utils.cc
@@ -119,7 +119,7 @@ string_vprintf (const char* fmt, va_list args)
/* See documentation in common-utils.h. */
-void
+std::string &
string_appendf (std::string &str, const char *fmt, ...)
{
va_list vp;
@@ -127,12 +127,14 @@ string_appendf (std::string &str, const char *fmt, ...)
va_start (vp, fmt);
string_vappendf (str, fmt, vp);
va_end (vp);
+
+ return str;
}
/* See documentation in common-utils.h. */
-void
+std::string &
string_vappendf (std::string &str, const char *fmt, va_list args)
{
va_list vp;
@@ -148,6 +150,8 @@ string_vappendf (std::string &str, const char *fmt, va_list args)
/* C++11 and later guarantee std::string uses contiguous memory and
always includes the terminating '\0'. */
vsprintf (&str[curr_size], fmt, args); /* ARI: vsprintf */
+
+ return str;
}
char *