aboutsummaryrefslogtreecommitdiff
path: root/gdb/valprint.h
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2018-05-05 10:24:54 -0600
committerTom Tromey <tom@tromey.com>2018-06-07 06:38:18 -0600
commitc7110220be62590222e35525dda499902ee49a89 (patch)
tree34756b1adffc595768d9c9d9e3c8197aefed0af5 /gdb/valprint.h
parent2a9b2c1abe29e1063240604d2464b8de9a46011f (diff)
downloadgdb-c7110220be62590222e35525dda499902ee49a89.zip
gdb-c7110220be62590222e35525dda499902ee49a89.tar.gz
gdb-c7110220be62590222e35525dda499902ee49a89.tar.bz2
Change build_address_symbolic to return std::string
This changes two out parameters of build_address_symbolic to be std::string, and updates the callers. This allows removing some cleanups. This patch also moves the declaration of build_address_symbolic out of defs.h. I think that many things in defs.h should be elsewhere instead. In this case, I moved the declaration to valprint.h, becuase there is no "printcmd.h" -- but perhaps it would be better to introduce that instead. Tested by the buildbot. gdb/ChangeLog 2018-06-07 Tom Tromey <tom@tromey.com> * valprint.h (build_address_symbolic): Declare. * printcmd.c (print_address_symbolic): Update. (build_address_symbolic): Change "name" and "filename" to std::string. * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn): Update. * defs.h (build_address_symbolic): Remove declaration.
Diffstat (limited to 'gdb/valprint.h')
-rw-r--r--gdb/valprint.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/gdb/valprint.h b/gdb/valprint.h
index 1f62039..16f53f0 100644
--- a/gdb/valprint.h
+++ b/gdb/valprint.h
@@ -229,4 +229,20 @@ extern void print_command_parse_format (const char **expp, const char *cmdname,
struct format_data *fmtp);
extern void print_value (struct value *val, const struct format_data *fmtp);
+/* Given an address ADDR return all the elements needed to print the
+ address in a symbolic form. NAME can be mangled or not depending
+ on DO_DEMANGLE (and also on the asm_demangle global variable,
+ manipulated via ''set print asm-demangle''). Return 0 in case of
+ success, when all the info in the OUT paramters is valid. Return 1
+ otherwise. */
+
+extern int build_address_symbolic (struct gdbarch *,
+ CORE_ADDR addr,
+ int do_demangle,
+ std::string *name,
+ int *offset,
+ std::string *filename,
+ int *line,
+ int *unmapped);
+
#endif