From: Tom Tromey Date: Wed, 22 Jul 2026 13:19:21 +0000 (-0600) Subject: Minor 'debug_*' function improvements X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6c4db2e34ac0ee5c3477896516020c8db5b77d81;p=thirdparty%2Fbinutils-gdb.git Minor 'debug_*' function improvements I wanted to get a summary of a type in gdb and then realized I had forgotten the function name, so I had to dig around to find it. This made me think that perhaps renaming the debug_* functions to all just be named 'debug' would be an improvement, since it's easier to remember. Then I noticed that debug_type and debug_val don't print a trailing newline. Finally, I needed to be able to see the contents of a gdb_mpz. v2 changes these functions to use ATTRIBUTE_USED rather than ATTRIBUTE_UNUSED, as the former indicates that these should not be deleted even if apparently unused. Approved-By: Tom de Vries --- diff --git a/gdb/expprint.c b/gdb/expprint.c index bc1929b1a1b..4859d48f6a4 100644 --- a/gdb/expprint.c +++ b/gdb/expprint.c @@ -35,13 +35,13 @@ /* Meant to be used in debug sessions, so don't export it in a header file. */ -extern void ATTRIBUTE_USED debug_exp (struct expression *exp); +extern void ATTRIBUTE_USED debug (struct expression *exp); /* Print EXP. */ void ATTRIBUTE_USED -debug_exp (struct expression *exp) +debug (struct expression *exp) { exp->dump (gdb_stdlog); gdb_flush (gdb_stdlog); diff --git a/gdb/gmp-utils.c b/gdb/gmp-utils.c index 168479c50df..b7fed9a82d1 100644 --- a/gdb/gmp-utils.c +++ b/gdb/gmp-utils.c @@ -39,6 +39,18 @@ gmp_string_printf (const char *fmt, ...) return str; } +/* Meant to be used in debug sessions, so don't export it in a header file. */ +extern void ATTRIBUTE_USED debug (const gdb_mpz &); + +/* Print VAL. */ + +void ATTRIBUTE_USED +debug (const gdb_mpz &val) +{ + gdb_printf (gdb_stdlog, "%s\n", val.str ().c_str ()); + gdb_flush (gdb_stdlog); +} + /* See gmp-utils.h. */ void diff --git a/gdb/typeprint.c b/gdb/typeprint.c index 31a9c1814a3..7d1ebc6fdca 100644 --- a/gdb/typeprint.c +++ b/gdb/typeprint.c @@ -516,14 +516,15 @@ ptype_command (const char *type_name, int from_tty) } /* Meant to be used in debug sessions, so don't export it in a header file. */ -extern void ATTRIBUTE_UNUSED debug_type (struct type *type); +extern void ATTRIBUTE_USED debug (struct type *type); /* Print TYPE. */ -void ATTRIBUTE_UNUSED -debug_type (struct type *type) +void ATTRIBUTE_USED +debug (struct type *type) { type_print (type, "", gdb_stdlog, 1); + gdb_printf (gdb_stdlog, "\n"); gdb_flush (gdb_stdlog); } diff --git a/gdb/valprint.c b/gdb/valprint.c index 50a4663ca3b..3e7a37338b3 100644 --- a/gdb/valprint.c +++ b/gdb/valprint.c @@ -1232,14 +1232,15 @@ value_print (struct value *val, struct ui_file *stream, } /* Meant to be used in debug sessions, so don't export it in a header file. */ -extern void ATTRIBUTE_UNUSED debug_val (struct value *val); +extern void ATTRIBUTE_USED debug (struct value *val); /* Print VAL. */ -void ATTRIBUTE_UNUSED -debug_val (struct value *val) +void ATTRIBUTE_USED +debug (struct value *val) { value_print (val, gdb_stdlog, &user_print_options); + gdb_printf (gdb_stdlog, "\n"); gdb_flush (gdb_stdlog); }