[PATCH 09/16] Style print_address_symbolic

Tom Tromey
2018-11-28T00:14:46Z

print_address_symbolic does not use ui-out, so it did not style
function names. This patch changes it to use the low-level style code
directly.

gdb/ChangeLog
2018-11-27 Tom Tromey <tom@tromey.com>

* printcmd.c (print_address_symbolic): Style function name.

gdb/testsuite/ChangeLog
2018-11-27 Tom Tromey <tom@tromey.com>

* gdb.base/style.exp: Add test for print_address_symbolic.
---
gdb/ChangeLog | 4 ++++
gdb/printcmd.c | 9 +++++----
gdb/testsuite/ChangeLog | 4 ++++
gdb/testsuite/gdb.base/style.exp | 2 ++
4 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/gdb/printcmd.c b/gdb/printcmd.c
index dd1626455b..c5b6b1a75b 100644
--- a/gdb/printcmd.c
+++ b/gdb/printcmd.c
@@ -50,6 +50,7 @@
#include "format.h"
#include "source.h"
#include "common/byte-vector.h"
+#include "cli/cli-style.h"

/* Last specified output format. */

@@ -535,7 +536,7 @@ print_address_symbolic (struct gdbarch *gdbarch, CORE_ADDR addr,
fputs_filtered ("<*", stream);
else
fputs_filtered ("<", stream);
- fputs_filtered (name.c_str (), stream);
+ fputs_styled (name.c_str (), function_name_style.style (), stream);
if (offset != 0)
fprintf_filtered (stream, "+%u", (unsigned int) offset);

@@ -543,10 +544,10 @@ print_address_symbolic (struct gdbarch *gdbarch, CORE_ADDR addr,
line # of this addr, if we have it; else line # of the nearest symbol. */
if (print_symbol_filename && !filename.empty ())
{
+ fputs_filtered (line == -1 ? " in " : " at ", stream);
+ fputs_styled (filename.c_str (), file_name_style.style (), stream);
if (line != -1)
- fprintf_filtered (stream, " at %s:%d", filename.c_str (), line);
- else
- fprintf_filtered (stream, " in %s", filename.c_str ());
+ fprintf_filtered (stream, ":%d", line);
}
if (unmapped)
fputs_filtered ("*>", stream);
diff --git a/gdb/testsuite/gdb.base/style.exp b/gdb/testsuite/gdb.base/style.exp
index df73e25a16..8b82ae99fa 100644
--- a/gdb/testsuite/gdb.base/style.exp
+++ b/gdb/testsuite/gdb.base/style.exp
@@ -42,4 +42,6 @@ save_vars { env(TERM) } {
gdb_test "info breakpoints" "$main_expr at $file_expr.*"

gdb_test "break main" "file $base_file_expr.*"
+
+ gdb_test "print &main" " = .* <$main_expr>"
}
--
2.17.2