public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
* [PATCH] gdbsupport: constify some return values in print-utils.{h,cc}
@ 2024-04-17 20:55 Simon Marchi
  2024-04-18 14:10 ` [PATCH] gdbsupport: constify some return values in print-utils.{h, cc} Tom Tromey
  0 siblings, 1 reply; 3+ messages in thread
From: Simon Marchi @ 2024-04-17 20:55 UTC (permalink / raw)
  To: gdb-patches; +Cc: Simon Marchi

There is no reason the callers of these functions need to change the
returned string, so change the `char *` return types to `const char *`.

Update a few callers to also use `const char *`.

Change-Id: I94adff574d5e1b326e8cc688cf1817a15b408b96
---
 gdb/dwarf2/types.h        |  2 +-
 gdb/symtab.c              |  2 +-
 gdbserver/utils.cc        |  2 +-
 gdbserver/utils.h         |  2 +-
 gdbsupport/print-utils.cc | 20 ++++++++++----------
 gdbsupport/print-utils.h  | 16 ++++++++--------
 6 files changed, 22 insertions(+), 22 deletions(-)

diff --git a/gdb/dwarf2/types.h b/gdb/dwarf2/types.h
index 9db5c6357046..f0b9febba151 100644
--- a/gdb/dwarf2/types.h
+++ b/gdb/dwarf2/types.h
@@ -31,7 +31,7 @@ DEFINE_OFFSET_TYPE (cu_offset, unsigned int);
    section.  */
 DEFINE_OFFSET_TYPE (sect_offset, uint64_t);
 
-static inline char *
+static inline const char *
 sect_offset_str (sect_offset offset)
 {
   return hex_string (to_underlying (offset));
diff --git a/gdb/symtab.c b/gdb/symtab.c
index 86603dfebc31..d931b3a694b3 100644
--- a/gdb/symtab.c
+++ b/gdb/symtab.c
@@ -5177,7 +5177,7 @@ static void
 print_msymbol_info (struct bound_minimal_symbol msymbol)
 {
   struct gdbarch *gdbarch = msymbol.objfile->arch ();
-  char *tmp;
+  const char *tmp;
 
   if (gdbarch_addr_bit (gdbarch) <= 32)
     tmp = hex_string_custom (msymbol.value_address ()
diff --git a/gdbserver/utils.cc b/gdbserver/utils.cc
index 3d3144e33da3..302300770e84 100644
--- a/gdbserver/utils.cc
+++ b/gdbserver/utils.cc
@@ -99,7 +99,7 @@ internal_vwarning (const char *file, int line, const char *fmt, va_list args)
 /* Convert a CORE_ADDR into a HEX string, like %lx.
    The result is stored in a circular static buffer, NUMCELLS deep.  */
 
-char *
+const char *
 paddress (CORE_ADDR addr)
 {
   return phex_nz (addr, sizeof (CORE_ADDR));
diff --git a/gdbserver/utils.h b/gdbserver/utils.h
index 7a6d0fd1d37b..ad1f82ccb9f6 100644
--- a/gdbserver/utils.h
+++ b/gdbserver/utils.h
@@ -19,6 +19,6 @@
 #ifndef GDBSERVER_UTILS_H
 #define GDBSERVER_UTILS_H
 
-char *paddress (CORE_ADDR addr);
+const char *paddress (CORE_ADDR addr);
 
 #endif /* GDBSERVER_UTILS_H */
diff --git a/gdbsupport/print-utils.cc b/gdbsupport/print-utils.cc
index 565a4791675f..a2e43576a7cd 100644
--- a/gdbsupport/print-utils.cc
+++ b/gdbsupport/print-utils.cc
@@ -122,7 +122,7 @@ octal2str (ULONGEST addr, int width)
 
 /* See print-utils.h.  */
 
-char *
+const char *
 pulongest (ULONGEST u)
 {
   return decimal2str ("", u, 0);
@@ -130,7 +130,7 @@ pulongest (ULONGEST u)
 
 /* See print-utils.h.  */
 
-char *
+const char *
 plongest (LONGEST l)
 {
   if (l < 0)
@@ -144,7 +144,7 @@ static int thirty_two = 32;
 
 /* See print-utils.h.  */
 
-char *
+const char *
 phex (ULONGEST l, int sizeof_l)
 {
   char *str;
@@ -170,7 +170,7 @@ phex (ULONGEST l, int sizeof_l)
       xsnprintf (str, PRINT_CELL_SIZE, "%02x", (unsigned short) (l & 0xff));
       break;
     default:
-      str = phex (l, sizeof (l));
+      return phex (l, sizeof (l));
       break;
     }
 
@@ -179,7 +179,7 @@ phex (ULONGEST l, int sizeof_l)
 
 /* See print-utils.h.  */
 
-char *
+const char *
 phex_nz (ULONGEST l, int sizeof_l)
 {
   char *str;
@@ -212,7 +212,7 @@ phex_nz (ULONGEST l, int sizeof_l)
       xsnprintf (str, PRINT_CELL_SIZE, "%x", (unsigned short) (l & 0xff));
       break;
     default:
-      str = phex_nz (l, sizeof (l));
+      return phex_nz (l, sizeof (l));
       break;
     }
 
@@ -221,7 +221,7 @@ phex_nz (ULONGEST l, int sizeof_l)
 
 /* See print-utils.h.  */
 
-char *
+const char *
 hex_string (LONGEST num)
 {
   char *result = get_print_cell ();
@@ -232,7 +232,7 @@ hex_string (LONGEST num)
 
 /* See print-utils.h.  */
 
-char *
+const char *
 hex_string_custom (LONGEST num, int width)
 {
   char *result = get_print_cell ();
@@ -254,7 +254,7 @@ hex_string_custom: insufficient space to store result"));
 
 /* See print-utils.h.  */
 
-char *
+const char *
 int_string (LONGEST val, int radix, int is_signed, int width,
 	    int use_c_format)
 {
@@ -262,7 +262,7 @@ int_string (LONGEST val, int radix, int is_signed, int width,
     {
     case 16:
       {
-	char *result;
+	const char *result;
 
 	if (width == 0)
 	  result = hex_string (val);
diff --git a/gdbsupport/print-utils.h b/gdbsupport/print-utils.h
index 510cc63bc895..5c5869ec1ae6 100644
--- a/gdbsupport/print-utils.h
+++ b/gdbsupport/print-utils.h
@@ -27,34 +27,34 @@
 /* %u for ULONGEST.  The result is stored in a circular static buffer,
    NUMCELLS deep.  */
 
-extern char *pulongest (ULONGEST u);
+extern const char *pulongest (ULONGEST u);
 
 /* %d for LONGEST.  The result is stored in a circular static buffer,
    NUMCELLS deep.  */
 
-extern char *plongest (LONGEST l);
+extern const char *plongest (LONGEST l);
 
 /* Convert a ULONGEST into a HEX string, like %lx, with leading zeros.
    The result is stored in a circular static buffer, NUMCELLS deep.  */
 
-extern char *phex (ULONGEST l, int sizeof_l);
+extern const char *phex (ULONGEST l, int sizeof_l);
 
 /* Convert a ULONGEST into a HEX string, like %lx, without leading zeros.
    The result is  stored in a circular static buffer, NUMCELLS deep.  */
 
-extern char *phex_nz (ULONGEST l, int sizeof_l);
+extern const char *phex_nz (ULONGEST l, int sizeof_l);
 
 /* Converts a LONGEST to a C-format hexadecimal literal and stores it
    in a static string.  Returns a pointer to this string.  */
 
-extern char *hex_string (LONGEST num);
+extern const char *hex_string (LONGEST num);
 
 /* Converts a LONGEST number to a C-format hexadecimal literal and
    stores it in a static string.  Returns a pointer to this string
    that is valid until the next call.  The number is padded on the
    left with 0s to at least WIDTH characters.  */
 
-extern char *hex_string_custom (LONGEST num, int width);
+extern const char *hex_string_custom (LONGEST num, int width);
 
 /* Convert VAL to a numeral in the given radix.  For
  * radix 10, IS_SIGNED may be true, indicating a signed quantity;
@@ -63,8 +63,8 @@ extern char *hex_string_custom (LONGEST num, int width);
  * to use C format in all cases.  If it is false, then 'x' 
  * and 'o' formats do not include a prefix (0x or leading 0).  */
 
-extern char *int_string (LONGEST val, int radix, int is_signed, int width, 
-			 int use_c_format);	
+extern const char *int_string (LONGEST val, int radix, int is_signed, int width,
+			       int use_c_format);
 
 /* Convert a CORE_ADDR into a string.  */
 

base-commit: 56f4dea207d690fff70a3ccb6fe10ebe1e4697c0
-- 
2.44.0


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] gdbsupport: constify some return values in print-utils.{h, cc}
  2024-04-17 20:55 [PATCH] gdbsupport: constify some return values in print-utils.{h,cc} Simon Marchi
@ 2024-04-18 14:10 ` Tom Tromey
  2024-04-18 14:32   ` Simon Marchi
  0 siblings, 1 reply; 3+ messages in thread
From: Tom Tromey @ 2024-04-18 14:10 UTC (permalink / raw)
  To: Simon Marchi; +Cc: gdb-patches

>>>>> "Simon" == Simon Marchi <simon.marchi@polymtl.ca> writes:

Simon> There is no reason the callers of these functions need to change the
Simon> returned string, so change the `char *` return types to `const char *`.

Simon> Update a few callers to also use `const char *`.

Seems reasonable to me.

Approved-By: Tom Tromey <tom@tromey.com>

Tom

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] gdbsupport: constify some return values in print-utils.{h, cc}
  2024-04-18 14:10 ` [PATCH] gdbsupport: constify some return values in print-utils.{h, cc} Tom Tromey
@ 2024-04-18 14:32   ` Simon Marchi
  0 siblings, 0 replies; 3+ messages in thread
From: Simon Marchi @ 2024-04-18 14:32 UTC (permalink / raw)
  To: Tom Tromey; +Cc: gdb-patches



On 2024-04-18 10:10, Tom Tromey wrote:
>>>>>> "Simon" == Simon Marchi <simon.marchi@polymtl.ca> writes:
> 
> Simon> There is no reason the callers of these functions need to change the
> Simon> returned string, so change the `char *` return types to `const char *`.
> 
> Simon> Update a few callers to also use `const char *`.
> 
> Seems reasonable to me.
> 
> Approved-By: Tom Tromey <tom@tromey.com>
> 
> Tom

Thanks, pushed.

Simon

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2024-04-18 14:32 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-04-17 20:55 [PATCH] gdbsupport: constify some return values in print-utils.{h,cc} Simon Marchi
2024-04-18 14:10 ` [PATCH] gdbsupport: constify some return values in print-utils.{h, cc} Tom Tromey
2024-04-18 14:32   ` Simon Marchi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).