summaryrefslogtreecommitdiff
path: root/gdb/printcmd.c
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>2004-01-26 20:36:32 +0000
committerAndrew Cagney <cagney@redhat.com>2004-01-26 20:36:32 +0000
commitb84f4ee1174249cc590fd4a97f6c69bcd017b6d8 (patch)
tree032ffe574a3a21e1f7536840e121181257e5fec0 /gdb/printcmd.c
parent19808a5b047b12745f4b0d257c73bbf94a0c9ddb (diff)
downloadgdb-b84f4ee1174249cc590fd4a97f6c69bcd017b6d8.tar.gz
2004-01-26 Andrew Cagney <cagney@redhat.com>
* dwarf2loc.c (dwarf_expr_frame_base): Use SYMBOL_OPS instead of SYMBOL_LOCATION_FUNCS (dwarf2_loclist_funcs, dwarf2_locexpr_funcs): Change type to "struct symbol_ops". * dwarf2loc.h (dwarf2_locexpr_funcs, dwarf2_loclist_funcs): Change type to "struct symbol_ops". * symtab.h (struct symbol_ops): Rename "struct location_funcs". (struct symbol): Replace ".aux_value.loc.funcs" and ".aux_value.loc.baton" with ".ops" and ".aux_value.ptr". (SYMBOL_OBJFILE): Delete macro. (SYMBOL_LOCATION_FUNCS): Delete macro. (SYMBOL_LOCATION_BATON): Update. * dwarf2read.c (dwarf2_symbol_mark_computed): Set SYMBOL_OPS intead of SYMBOL_LOCATION_FUNCS. * ax-gdb.c (gen_var_ref): Ditto. * printcmd.c (address_info): Ditto. * findvar.c (read_var_value): Ditto. (symbol_read_needs_frame): Ditto.
Diffstat (limited to 'gdb/printcmd.c')
-rw-r--r--gdb/printcmd.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/gdb/printcmd.c b/gdb/printcmd.c
index 0502cf1cb24..dba7bdd1b7f 100644
--- a/gdb/printcmd.c
+++ b/gdb/printcmd.c
@@ -1141,7 +1141,12 @@ address_info (char *exp, int from_tty)
case LOC_COMPUTED:
case LOC_COMPUTED_ARG:
- (SYMBOL_LOCATION_FUNCS (sym)->describe_location) (sym, gdb_stdout);
+ /* FIXME: cagney/2004-01-26: It should be possible to
+ unconditionally call the SYMBOL_OPS method when available.
+ Unfortunatly DWARF 2 stores the frame-base (instead of the
+ function) location in a function's symbol. Oops! For the
+ moment enable this when/where applicable. */
+ SYMBOL_OPS (sym)->describe_location (sym, gdb_stdout);
break;
case LOC_REGISTER: