2005-11-14 James E Wilson PR 2024 * dwarf2loc.c (dwarf_expr_frame_base): Use get_frame_address_in_block instead of get_frame_pc. (loclist_read_variable): Likewise. Index: dwarf2loc.c =================================================================== RCS file: /cvs/src/src/gdb/dwarf2loc.c,v retrieving revision 1.29 diff -p -p -r1.29 dwarf2loc.c *** dwarf2loc.c 12 Jul 2005 13:06:54 -0000 1.29 --- dwarf2loc.c 14 Nov 2005 20:42:17 -0000 *************** dwarf_expr_frame_base (void *baton, gdb_ *** 164,172 **** if (SYMBOL_OPS (framefunc) == &dwarf2_loclist_funcs) { struct dwarf2_loclist_baton *symbaton; symbaton = SYMBOL_LOCATION_BATON (framefunc); *start = find_location_expression (symbaton, length, ! get_frame_pc (debaton->frame)); } else { --- 164,174 ---- if (SYMBOL_OPS (framefunc) == &dwarf2_loclist_funcs) { struct dwarf2_loclist_baton *symbaton; + struct frame_info *frame = debaton->frame; + symbaton = SYMBOL_LOCATION_BATON (framefunc); *start = find_location_expression (symbaton, length, ! get_frame_address_in_block (frame)); } else { *************** loclist_read_variable (struct symbol *sy *** 580,586 **** size_t size; data = find_location_expression (dlbaton, &size, ! frame ? get_frame_pc (frame) : 0); if (data == NULL) { val = allocate_value (SYMBOL_TYPE (symbol)); --- 582,589 ---- size_t size; data = find_location_expression (dlbaton, &size, ! frame ? get_frame_address_in_block (frame) ! : 0); if (data == NULL) { val = allocate_value (SYMBOL_TYPE (symbol));