* mi-cmd-var.c: Change all remaining occurrences of ui_out_tuple_begin
to make_cleanup_ui_out_tuple_begin_end. Change all remaining
occurrences of ui_out_list_begin to make_cleanup_ui_out_list_begin_end. Use do_cleanups instead of ui_out_list_end or ui_out_tuple_end. This
is a fix for PR gdb/680.
* mi-cmd-stack.c: Ditto.
* mi-main.c: Ditto.
* stack.c (get_selected_block): Add new argument `addr_in_block',
used to return the exact code address we used to select the block,
not just the block.
* blockframe.c (get_frame_block, get_current_block): Same.
* frame.h (get_frame_block, get_current_block,
get_selected_block): Update declarations.
* linespec.c, stack.c, blockframe.c, breakpoint.c, findvar.c,
linespec.c, varobj.c, printcmd.c, symtab.c: Callers changed.
gdb/mi/ChangeLog:
* mi-cmd-stack.c (list_args_or_locals): Pass new arg to
get_frame_block. (See entry in gdb/ChangeLog.)
print_me inside the loop body, so it gets re-initialized every
iteration. The cases for the different symbol kinds leave
print_me unchanged if they don't want the symbol printed.