[PATCH 1/2] Make ada-lang.c::add_angle_brackets return an std::string

Simon Marchi simon.marchi@polymtl.ca
Mon Aug 20 01:50:00 GMT 2018


This removes the need for manual memory management.  It may also be a
bit more efficient, since the returned string can be moved all the way
into the destination, in ada_lookup_name_info::matches.

gdb/ChangeLog:

	* ada-lang.c (add_angle_brackets): Return std::string.
---
 gdb/ada-lang.c | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
index db5334dd1e00..d9d3087642bc 100644
--- a/gdb/ada-lang.c
+++ b/gdb/ada-lang.c
@@ -541,17 +541,12 @@ ada_unqualified_name (const char *decoded_name)
   return result;
 }
 
-/* Return a string starting with '<', followed by STR, and '>'.
-   The result is good until the next call.  */
+/* Return a string starting with '<', followed by STR, and '>'.  */
 
-static char *
+static std::string
 add_angle_brackets (const char *str)
 {
-  static char *result = NULL;
-
-  xfree (result);
-  result = xstrprintf ("<%s>", str);
-  return result;
+  return string_printf ("<%s>", str);
 }
 
 static const char *
-- 
2.18.0



More information about the Gdb-patches mailing list