binutils-gdb/gdb/annotate.c

570 lines
10 KiB
C
Raw Normal View History

gcc -Wall lint: * breakpoint.c (watchpoint_check): Remove unused variable b. * stack.c (print_frame_info): Move sp and buf inside #if. * eval.c (evaluate_subexp): Remove unused variables pp, mangle_ptr, ptr, and mangle_tstr. * valarith.c (value_x_binop): Remove unused variables mangle_tstr and mangle_ptr. * symtab.c (lookup_symtab): Put variable copy inside #if. (decode_line_1): Put variable q1 inside #if 0. * target.h: Declare target_link. * infrun.c (wait_for_inferior): Remove unused variables signame. * remote.c (remote_resume): Remove unused variable name. * c-exp.y (parse_number): Parenthesize operand of shift. * dbxread.c (record_minimal_symbol): Parenthesize operand of && (this is a semantic change, the warning seems to have detected a bug). * dbxread.c (end_psymtab): Move variable p1 inside #if. * coffread.c: Move variable temptype inside #if. * ch-typeprint.c (chill_type_print_base): Remove unused variable name. * ch-valprint.c: #include typeprint.h and ch-lang.h. (chill_val_print): Remove unused variable in_range. (chill_val_print): Remove statement "length > TYPE_LENGTH (type);". (chill_val_print): Add default case for switch. * stabsread.h: Declare stabsect_build_psymtabs. * os9kread.c (read_minimal_symbols): Make this return void. (os9k_symfile_read): Remove unused variables stb_exist and val. (os9k_symfile_init): Remove unused variable val. (fill_sym): Remove unused variable id. (read_os9k_psymtab): Put variable back_to inside #if 0. Remove unused variable nsl. Remove unused variable symfile_bfd. #if 0 unused variables lbrac_unmatched_complaint and lbrac_mismatch_complaint. Remove declaration for non-existent function os9k_next_symbol_text. * annotate.c, annotate.h: New files, containing a function for each annotation which outputs it. * Move breakpoints_changed from breakpoint.c to annotate.c. * breakpoint.c, blockframe.c, infrun.c, cp-valprint.c, main.c, printcmd.c, source.c, stack.c, utils.c, valprint.c: Use annotate.c functions to output annotations. * Makefile.in (OBS): Add annotate.o.
1994-05-13 20:18:57 +02:00
/* Annotation routines for GDB.
Copyright 1986, 89, 90, 91, 92, 95, 1998 Free Software Foundation, Inc.
gcc -Wall lint: * breakpoint.c (watchpoint_check): Remove unused variable b. * stack.c (print_frame_info): Move sp and buf inside #if. * eval.c (evaluate_subexp): Remove unused variables pp, mangle_ptr, ptr, and mangle_tstr. * valarith.c (value_x_binop): Remove unused variables mangle_tstr and mangle_ptr. * symtab.c (lookup_symtab): Put variable copy inside #if. (decode_line_1): Put variable q1 inside #if 0. * target.h: Declare target_link. * infrun.c (wait_for_inferior): Remove unused variables signame. * remote.c (remote_resume): Remove unused variable name. * c-exp.y (parse_number): Parenthesize operand of shift. * dbxread.c (record_minimal_symbol): Parenthesize operand of && (this is a semantic change, the warning seems to have detected a bug). * dbxread.c (end_psymtab): Move variable p1 inside #if. * coffread.c: Move variable temptype inside #if. * ch-typeprint.c (chill_type_print_base): Remove unused variable name. * ch-valprint.c: #include typeprint.h and ch-lang.h. (chill_val_print): Remove unused variable in_range. (chill_val_print): Remove statement "length > TYPE_LENGTH (type);". (chill_val_print): Add default case for switch. * stabsread.h: Declare stabsect_build_psymtabs. * os9kread.c (read_minimal_symbols): Make this return void. (os9k_symfile_read): Remove unused variables stb_exist and val. (os9k_symfile_init): Remove unused variable val. (fill_sym): Remove unused variable id. (read_os9k_psymtab): Put variable back_to inside #if 0. Remove unused variable nsl. Remove unused variable symfile_bfd. #if 0 unused variables lbrac_unmatched_complaint and lbrac_mismatch_complaint. Remove declaration for non-existent function os9k_next_symbol_text. * annotate.c, annotate.h: New files, containing a function for each annotation which outputs it. * Move breakpoints_changed from breakpoint.c to annotate.c. * breakpoint.c, blockframe.c, infrun.c, cp-valprint.c, main.c, printcmd.c, source.c, stack.c, utils.c, valprint.c: Use annotate.c functions to output annotations. * Makefile.in (OBS): Add annotate.o.
1994-05-13 20:18:57 +02:00
This file is part of GDB.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
1995-08-02 05:41:12 +02:00
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
gcc -Wall lint: * breakpoint.c (watchpoint_check): Remove unused variable b. * stack.c (print_frame_info): Move sp and buf inside #if. * eval.c (evaluate_subexp): Remove unused variables pp, mangle_ptr, ptr, and mangle_tstr. * valarith.c (value_x_binop): Remove unused variables mangle_tstr and mangle_ptr. * symtab.c (lookup_symtab): Put variable copy inside #if. (decode_line_1): Put variable q1 inside #if 0. * target.h: Declare target_link. * infrun.c (wait_for_inferior): Remove unused variables signame. * remote.c (remote_resume): Remove unused variable name. * c-exp.y (parse_number): Parenthesize operand of shift. * dbxread.c (record_minimal_symbol): Parenthesize operand of && (this is a semantic change, the warning seems to have detected a bug). * dbxread.c (end_psymtab): Move variable p1 inside #if. * coffread.c: Move variable temptype inside #if. * ch-typeprint.c (chill_type_print_base): Remove unused variable name. * ch-valprint.c: #include typeprint.h and ch-lang.h. (chill_val_print): Remove unused variable in_range. (chill_val_print): Remove statement "length > TYPE_LENGTH (type);". (chill_val_print): Add default case for switch. * stabsread.h: Declare stabsect_build_psymtabs. * os9kread.c (read_minimal_symbols): Make this return void. (os9k_symfile_read): Remove unused variables stb_exist and val. (os9k_symfile_init): Remove unused variable val. (fill_sym): Remove unused variable id. (read_os9k_psymtab): Put variable back_to inside #if 0. Remove unused variable nsl. Remove unused variable symfile_bfd. #if 0 unused variables lbrac_unmatched_complaint and lbrac_mismatch_complaint. Remove declaration for non-existent function os9k_next_symbol_text. * annotate.c, annotate.h: New files, containing a function for each annotation which outputs it. * Move breakpoints_changed from breakpoint.c to annotate.c. * breakpoint.c, blockframe.c, infrun.c, cp-valprint.c, main.c, printcmd.c, source.c, stack.c, utils.c, valprint.c: Use annotate.c functions to output annotations. * Makefile.in (OBS): Add annotate.o.
1994-05-13 20:18:57 +02:00
#include "defs.h"
#include "annotate.h"
#include "value.h"
#include "target.h"
#include "gdbtypes.h"
#include "breakpoint.h"
/* Prototypes for local functions. */
static void print_value_flags PARAMS ((struct type *));
static void breakpoint_changed PARAMS ((struct breakpoint *));
gcc -Wall lint: * breakpoint.c (watchpoint_check): Remove unused variable b. * stack.c (print_frame_info): Move sp and buf inside #if. * eval.c (evaluate_subexp): Remove unused variables pp, mangle_ptr, ptr, and mangle_tstr. * valarith.c (value_x_binop): Remove unused variables mangle_tstr and mangle_ptr. * symtab.c (lookup_symtab): Put variable copy inside #if. (decode_line_1): Put variable q1 inside #if 0. * target.h: Declare target_link. * infrun.c (wait_for_inferior): Remove unused variables signame. * remote.c (remote_resume): Remove unused variable name. * c-exp.y (parse_number): Parenthesize operand of shift. * dbxread.c (record_minimal_symbol): Parenthesize operand of && (this is a semantic change, the warning seems to have detected a bug). * dbxread.c (end_psymtab): Move variable p1 inside #if. * coffread.c: Move variable temptype inside #if. * ch-typeprint.c (chill_type_print_base): Remove unused variable name. * ch-valprint.c: #include typeprint.h and ch-lang.h. (chill_val_print): Remove unused variable in_range. (chill_val_print): Remove statement "length > TYPE_LENGTH (type);". (chill_val_print): Add default case for switch. * stabsread.h: Declare stabsect_build_psymtabs. * os9kread.c (read_minimal_symbols): Make this return void. (os9k_symfile_read): Remove unused variables stb_exist and val. (os9k_symfile_init): Remove unused variable val. (fill_sym): Remove unused variable id. (read_os9k_psymtab): Put variable back_to inside #if 0. Remove unused variable nsl. Remove unused variable symfile_bfd. #if 0 unused variables lbrac_unmatched_complaint and lbrac_mismatch_complaint. Remove declaration for non-existent function os9k_next_symbol_text. * annotate.c, annotate.h: New files, containing a function for each annotation which outputs it. * Move breakpoints_changed from breakpoint.c to annotate.c. * breakpoint.c, blockframe.c, infrun.c, cp-valprint.c, main.c, printcmd.c, source.c, stack.c, utils.c, valprint.c: Use annotate.c functions to output annotations. * Makefile.in (OBS): Add annotate.o.
1994-05-13 20:18:57 +02:00
Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com> merged changes from Foundry (list follows by file/author): - Tom Tromey <tromey@cygnus.com> * Makefile.in (gdbres.o): New target. (WINDRES): New define. * configure: Rebuilt. * configure.in (WINDRES): Define. (CONFIG_OBS): Include gdbres.o on Windows. * gdbtool.ico: New file. * gdb.rc: New file. * ser-unix.c - Keith Seitz <keiths@onions.cygnus.com> (wait_for): Don't reset the timeout_remaining for CYGWIN32, since we now effectively poll the serial port. Don't reset the current_timeout, either, since this member is used by hardwire_readchar to track the timeout and call the ui_loop_hook. (hardwire_readchar): Poll the serial port for Cygwin32. We timeout every second, update the UI, and loop around doing this until we have hit the real timeout or we get data or an error. This will allow the UI to stay active while gdb is "blocked" talking to the target. - Martin M. Hunt <hunt@cygnus.com> (wait_for): Do reset current_timeout because it is only used to keep track of what the current timeout for the scb is. * top.c - Martin M. Hunt <hunt@cygnus.com> (quit_confirm): Change exit message again for GUI. (pc_changed_hook): Add prototype. - Tom Tromey <tromey@cygnus.com> (quit_confirm): Added missing `else'. (quit_confirm): Special-case message if init_ui_hook is set. * symtab.c - Martin M. Hunt <hunt@cygnus.com> (find_pc_sect_line): If no symbol information is found, return correct pc anyway. (find_methods): Comment out an apparently bogus error message because it messes up Foundry. * serial.c - Martin M. Hunt <hunt@cygnus.com> (_initialize_serial): Add a description of "set remotelogbase". * findvar.c - Martin M. Hunt <hunt@cygnus.com> (write_register_gen): Add call to pc_changed_hook if the PC is being changed. * defs.h - Martin M. Hunt <hunt@cygnus.com> (pc_changed_hook): Define. * command.c - Martin M. Hunt <hunt@cygnus.com> (do_setshow_command): If no arguments are supplied, don't dump core, instead print out an error message. * breakpoint.c - Martin M. Hunt <hunt@cygnus.com> Make set_raw_breakpoint, set_breakpoint_count, and breakpoint_count non-static so they are accessible from gdbtk.c. (enable_breakpoint): Enable breakpoint with same disposition instead of changing all breakpoints to donttouch. * annotate.h - Keith Seitz <keiths@onions.cygnus.com> Add declarations for annotation hooks. * annotate.c - Keith Seitz <keiths@onions.cygnus.com> Add hooks: annotate_starting_hook, annotate_stopped_hook, annotate_signalled_hook, annotate_exited_hook. (annotate_starting): If hook exists, call it instead. (annotate_stopped): If hook exists, call it instead. (annotate_exited): If hook exists, call it instead. (annotate_signalled): If hook exists, call it instead. Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com> Merged changes from Foundry: list follows by author: - Tom Tromey <tromey@cygnus.com> * Makefile.in (gdbres.o): New target. (WINDRES): New define. * configure: Rebuilt. * configure.in (WINDRES): Define. (CONFIG_OBS): Include gdbres.o on Windows. * gdbtool.ico: New file. * gdb.rc: New file. * gdbtk.c (gdbtk_init): Call ide_create_messagebox_command. (gdbtk_cleanup): Call ide_interface_deregister_all. (gdbtk_init): Pass event handle to cleanup. (TclDebug): Use Tcl_Merge to construct command. (gdbtk_init): Call ide_create_cygwin_path_command. - Martin M. Hunt <hunt@cygnus.com> * gdbtk.c (gdb_set_bp): Set addr_string for bp. (gdb_get_breakpoint_info): Demangle function names in breakpoint info. Include "demangle.h". (gdb_loc, gdb_listfuncs): Demangle C++ function names. (gdb_set_bp): Properly quote filename to fix problems with spaces. Send pc back as a hex string. (gdb_listfuncs): Remove debugging line. Turn off some debugging lines. (breakpoint_notify): Return correct line number. (gdb_get_breakpoint_info): Return correct line number. (gdb_set_bp): New function to provide a better way to set breakpoints. (gdbtk_readline, gdbtk_readline_begin): Memory allocated by tcl needs to be freed by Tcl_Free(). (find_file_in_dir): Deleted. (gdb_find_file_command): Call full_lookup_symtab(). (gdb_listfuncs): Call full_lookup_symtab(). (full_lookup_symtab): New function. Like lookup_symtab except handles multiple files with the same basename, full pathnames, and always sets symtab->fullname. (gdb_loadfile): Call full_lookup_symtab(). Clear realloc'd memory. (gdb_loadfile): Don't tag lines without source. Tag source lines with source_tag. (gdb_find_file_command, find_file_in_dir): Rewrite. Now searches symtabs and psymtabs for a match on the partial or full filename. Returns the full pathname. (gdb_loadfile): Realloc additional memory if someone loads in a file with more than 160,000 lines. I don't know if this really works because I don't have enough memory to test it. (gdb_sourcelines): Deleted. (gdb_loadfile): New function. Takes a text widget and loads it with the contents of a file. Marks and tags source lines. (pc_changed): New function. (get_pc_register): Returns the value of the PC to GDB. (gdb_loc): If looking on the stack, return real pc along with calling source line. (gdb_loc): Return "" instead of "N/A" if filename is not found. (gdb_get_breakpoint_info): Same. (get_register): For Natural mode, set format to 0. Minor bugfixes from keiths. (TclDebug): New function for debugging use. (gdb_loc): Return correct PC for frames that are not the innermost frame. (gdb_listfiles): Rewritten to use object API. Now takes an optional dirname which will cause only files in that directory or its subdirectories to be returned. Now returns basenames instead of full pathnames. (gdb_cmd): Set/reset load_in_progress flag. (call_wrapper): Don't pop up dialog for errors in downloads; just abort download. (gdbtk_load_hash): Set return value correctly. - Keith Seitz <keiths@onions.cygnus.com> * gdbtk.c (gdbtk_init): Define the ui_loop_hook so that it can be called by routines which might block, allowing us to update the GUI. (gdbtk_wait): Move timer calls to annotation hooks. (gdbtk_init): Define the annotation hooks. (gdbtk_annotate_starting): New function for cygwin32 hosts. (gdbtk_annotate_stopped): New function for cygwin32 hosts. (gdbtk_annotate_exited): New function for cygwin32 hosts. (gdbtk_annotate_signalled): New function. for cygwin32 hosts. (gdbtk_init): Use gdbtk_print_frame_info hook. (gdbtk_print_frame_info): New function which sets current_source_symtab based on the given symtab and line info. (gdb_immediate_command): New function which does not buffer any output. (Contrast to gdb_cmd.) (gdb_prompt_command): New function to return gdb's prompt. (find_file_in_dir): New functon which searches source paths for a given filename. (gdb_find_file): New function which returns path to given file -- uses find_file_in_dir. (gdbtk_init): Install "gdb_immediate", "gdb_find_file", and "gdb_prompt" commands into interpreter. - Ian Lance Taylor <ian@cygnus.com> * gdbtk.c (gdbtk_timer_going): If __CYGWIN32__, new static variable. (gdb_cmd): If __CYGWIN32__, if executing the load command, call gdbtk_start_timer and gdbtk_stop_timer. (call_wrapper): If __CYGWIN32__, if the timer is going, turn it off. Clear load_in_progress. (x_event): If load_in_progress, quit if download_cancel_ok. (gdbtk_start_timer): Set gdbtk_timer_going. (gdbtk_stop_timer): Clear gdbtk_timer_going. (gdbtk_wait): Call x_event. (gdbtk_init): Call ide_create_win_grab_command if __CYGIN32__. (gdb_clear_file): Clear stop_pc.
1998-03-23 00:02:10 +01:00
void (*annotate_starting_hook) PARAMS ((void));
void (*annotate_stopped_hook) PARAMS ((void));
void (*annotate_signalled_hook) PARAMS ((void));
void (*annotate_exited_hook) PARAMS ((void));
static void
print_value_flags (t)
struct type *t;
{
if (can_dereference (t))
printf_filtered ("*");
else
printf_filtered ("-");
}
gcc -Wall lint: * breakpoint.c (watchpoint_check): Remove unused variable b. * stack.c (print_frame_info): Move sp and buf inside #if. * eval.c (evaluate_subexp): Remove unused variables pp, mangle_ptr, ptr, and mangle_tstr. * valarith.c (value_x_binop): Remove unused variables mangle_tstr and mangle_ptr. * symtab.c (lookup_symtab): Put variable copy inside #if. (decode_line_1): Put variable q1 inside #if 0. * target.h: Declare target_link. * infrun.c (wait_for_inferior): Remove unused variables signame. * remote.c (remote_resume): Remove unused variable name. * c-exp.y (parse_number): Parenthesize operand of shift. * dbxread.c (record_minimal_symbol): Parenthesize operand of && (this is a semantic change, the warning seems to have detected a bug). * dbxread.c (end_psymtab): Move variable p1 inside #if. * coffread.c: Move variable temptype inside #if. * ch-typeprint.c (chill_type_print_base): Remove unused variable name. * ch-valprint.c: #include typeprint.h and ch-lang.h. (chill_val_print): Remove unused variable in_range. (chill_val_print): Remove statement "length > TYPE_LENGTH (type);". (chill_val_print): Add default case for switch. * stabsread.h: Declare stabsect_build_psymtabs. * os9kread.c (read_minimal_symbols): Make this return void. (os9k_symfile_read): Remove unused variables stb_exist and val. (os9k_symfile_init): Remove unused variable val. (fill_sym): Remove unused variable id. (read_os9k_psymtab): Put variable back_to inside #if 0. Remove unused variable nsl. Remove unused variable symfile_bfd. #if 0 unused variables lbrac_unmatched_complaint and lbrac_mismatch_complaint. Remove declaration for non-existent function os9k_next_symbol_text. * annotate.c, annotate.h: New files, containing a function for each annotation which outputs it. * Move breakpoints_changed from breakpoint.c to annotate.c. * breakpoint.c, blockframe.c, infrun.c, cp-valprint.c, main.c, printcmd.c, source.c, stack.c, utils.c, valprint.c: Use annotate.c functions to output annotations. * Makefile.in (OBS): Add annotate.o.
1994-05-13 20:18:57 +02:00
void
breakpoints_changed ()
{
if (annotation_level > 1)
{
target_terminal_ours ();
printf_unfiltered ("\n\032\032breakpoints-invalid\n");
}
}
void
annotate_breakpoint (num)
int num;
{
if (annotation_level > 1)
printf_filtered ("\n\032\032breakpoint %d\n", num);
}
void
annotate_watchpoint (num)
int num;
{
if (annotation_level > 1)
printf_filtered ("\n\032\032watchpoint %d\n", num);
}
void
annotate_starting ()
{
Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com> merged changes from Foundry (list follows by file/author): - Tom Tromey <tromey@cygnus.com> * Makefile.in (gdbres.o): New target. (WINDRES): New define. * configure: Rebuilt. * configure.in (WINDRES): Define. (CONFIG_OBS): Include gdbres.o on Windows. * gdbtool.ico: New file. * gdb.rc: New file. * ser-unix.c - Keith Seitz <keiths@onions.cygnus.com> (wait_for): Don't reset the timeout_remaining for CYGWIN32, since we now effectively poll the serial port. Don't reset the current_timeout, either, since this member is used by hardwire_readchar to track the timeout and call the ui_loop_hook. (hardwire_readchar): Poll the serial port for Cygwin32. We timeout every second, update the UI, and loop around doing this until we have hit the real timeout or we get data or an error. This will allow the UI to stay active while gdb is "blocked" talking to the target. - Martin M. Hunt <hunt@cygnus.com> (wait_for): Do reset current_timeout because it is only used to keep track of what the current timeout for the scb is. * top.c - Martin M. Hunt <hunt@cygnus.com> (quit_confirm): Change exit message again for GUI. (pc_changed_hook): Add prototype. - Tom Tromey <tromey@cygnus.com> (quit_confirm): Added missing `else'. (quit_confirm): Special-case message if init_ui_hook is set. * symtab.c - Martin M. Hunt <hunt@cygnus.com> (find_pc_sect_line): If no symbol information is found, return correct pc anyway. (find_methods): Comment out an apparently bogus error message because it messes up Foundry. * serial.c - Martin M. Hunt <hunt@cygnus.com> (_initialize_serial): Add a description of "set remotelogbase". * findvar.c - Martin M. Hunt <hunt@cygnus.com> (write_register_gen): Add call to pc_changed_hook if the PC is being changed. * defs.h - Martin M. Hunt <hunt@cygnus.com> (pc_changed_hook): Define. * command.c - Martin M. Hunt <hunt@cygnus.com> (do_setshow_command): If no arguments are supplied, don't dump core, instead print out an error message. * breakpoint.c - Martin M. Hunt <hunt@cygnus.com> Make set_raw_breakpoint, set_breakpoint_count, and breakpoint_count non-static so they are accessible from gdbtk.c. (enable_breakpoint): Enable breakpoint with same disposition instead of changing all breakpoints to donttouch. * annotate.h - Keith Seitz <keiths@onions.cygnus.com> Add declarations for annotation hooks. * annotate.c - Keith Seitz <keiths@onions.cygnus.com> Add hooks: annotate_starting_hook, annotate_stopped_hook, annotate_signalled_hook, annotate_exited_hook. (annotate_starting): If hook exists, call it instead. (annotate_stopped): If hook exists, call it instead. (annotate_exited): If hook exists, call it instead. (annotate_signalled): If hook exists, call it instead. Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com> Merged changes from Foundry: list follows by author: - Tom Tromey <tromey@cygnus.com> * Makefile.in (gdbres.o): New target. (WINDRES): New define. * configure: Rebuilt. * configure.in (WINDRES): Define. (CONFIG_OBS): Include gdbres.o on Windows. * gdbtool.ico: New file. * gdb.rc: New file. * gdbtk.c (gdbtk_init): Call ide_create_messagebox_command. (gdbtk_cleanup): Call ide_interface_deregister_all. (gdbtk_init): Pass event handle to cleanup. (TclDebug): Use Tcl_Merge to construct command. (gdbtk_init): Call ide_create_cygwin_path_command. - Martin M. Hunt <hunt@cygnus.com> * gdbtk.c (gdb_set_bp): Set addr_string for bp. (gdb_get_breakpoint_info): Demangle function names in breakpoint info. Include "demangle.h". (gdb_loc, gdb_listfuncs): Demangle C++ function names. (gdb_set_bp): Properly quote filename to fix problems with spaces. Send pc back as a hex string. (gdb_listfuncs): Remove debugging line. Turn off some debugging lines. (breakpoint_notify): Return correct line number. (gdb_get_breakpoint_info): Return correct line number. (gdb_set_bp): New function to provide a better way to set breakpoints. (gdbtk_readline, gdbtk_readline_begin): Memory allocated by tcl needs to be freed by Tcl_Free(). (find_file_in_dir): Deleted. (gdb_find_file_command): Call full_lookup_symtab(). (gdb_listfuncs): Call full_lookup_symtab(). (full_lookup_symtab): New function. Like lookup_symtab except handles multiple files with the same basename, full pathnames, and always sets symtab->fullname. (gdb_loadfile): Call full_lookup_symtab(). Clear realloc'd memory. (gdb_loadfile): Don't tag lines without source. Tag source lines with source_tag. (gdb_find_file_command, find_file_in_dir): Rewrite. Now searches symtabs and psymtabs for a match on the partial or full filename. Returns the full pathname. (gdb_loadfile): Realloc additional memory if someone loads in a file with more than 160,000 lines. I don't know if this really works because I don't have enough memory to test it. (gdb_sourcelines): Deleted. (gdb_loadfile): New function. Takes a text widget and loads it with the contents of a file. Marks and tags source lines. (pc_changed): New function. (get_pc_register): Returns the value of the PC to GDB. (gdb_loc): If looking on the stack, return real pc along with calling source line. (gdb_loc): Return "" instead of "N/A" if filename is not found. (gdb_get_breakpoint_info): Same. (get_register): For Natural mode, set format to 0. Minor bugfixes from keiths. (TclDebug): New function for debugging use. (gdb_loc): Return correct PC for frames that are not the innermost frame. (gdb_listfiles): Rewritten to use object API. Now takes an optional dirname which will cause only files in that directory or its subdirectories to be returned. Now returns basenames instead of full pathnames. (gdb_cmd): Set/reset load_in_progress flag. (call_wrapper): Don't pop up dialog for errors in downloads; just abort download. (gdbtk_load_hash): Set return value correctly. - Keith Seitz <keiths@onions.cygnus.com> * gdbtk.c (gdbtk_init): Define the ui_loop_hook so that it can be called by routines which might block, allowing us to update the GUI. (gdbtk_wait): Move timer calls to annotation hooks. (gdbtk_init): Define the annotation hooks. (gdbtk_annotate_starting): New function for cygwin32 hosts. (gdbtk_annotate_stopped): New function for cygwin32 hosts. (gdbtk_annotate_exited): New function for cygwin32 hosts. (gdbtk_annotate_signalled): New function. for cygwin32 hosts. (gdbtk_init): Use gdbtk_print_frame_info hook. (gdbtk_print_frame_info): New function which sets current_source_symtab based on the given symtab and line info. (gdb_immediate_command): New function which does not buffer any output. (Contrast to gdb_cmd.) (gdb_prompt_command): New function to return gdb's prompt. (find_file_in_dir): New functon which searches source paths for a given filename. (gdb_find_file): New function which returns path to given file -- uses find_file_in_dir. (gdbtk_init): Install "gdb_immediate", "gdb_find_file", and "gdb_prompt" commands into interpreter. - Ian Lance Taylor <ian@cygnus.com> * gdbtk.c (gdbtk_timer_going): If __CYGWIN32__, new static variable. (gdb_cmd): If __CYGWIN32__, if executing the load command, call gdbtk_start_timer and gdbtk_stop_timer. (call_wrapper): If __CYGWIN32__, if the timer is going, turn it off. Clear load_in_progress. (x_event): If load_in_progress, quit if download_cancel_ok. (gdbtk_start_timer): Set gdbtk_timer_going. (gdbtk_stop_timer): Clear gdbtk_timer_going. (gdbtk_wait): Call x_event. (gdbtk_init): Call ide_create_win_grab_command if __CYGIN32__. (gdb_clear_file): Clear stop_pc.
1998-03-23 00:02:10 +01:00
if (annotate_starting_hook)
annotate_starting_hook ();
else
{
Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com> merged changes from Foundry (list follows by file/author): - Tom Tromey <tromey@cygnus.com> * Makefile.in (gdbres.o): New target. (WINDRES): New define. * configure: Rebuilt. * configure.in (WINDRES): Define. (CONFIG_OBS): Include gdbres.o on Windows. * gdbtool.ico: New file. * gdb.rc: New file. * ser-unix.c - Keith Seitz <keiths@onions.cygnus.com> (wait_for): Don't reset the timeout_remaining for CYGWIN32, since we now effectively poll the serial port. Don't reset the current_timeout, either, since this member is used by hardwire_readchar to track the timeout and call the ui_loop_hook. (hardwire_readchar): Poll the serial port for Cygwin32. We timeout every second, update the UI, and loop around doing this until we have hit the real timeout or we get data or an error. This will allow the UI to stay active while gdb is "blocked" talking to the target. - Martin M. Hunt <hunt@cygnus.com> (wait_for): Do reset current_timeout because it is only used to keep track of what the current timeout for the scb is. * top.c - Martin M. Hunt <hunt@cygnus.com> (quit_confirm): Change exit message again for GUI. (pc_changed_hook): Add prototype. - Tom Tromey <tromey@cygnus.com> (quit_confirm): Added missing `else'. (quit_confirm): Special-case message if init_ui_hook is set. * symtab.c - Martin M. Hunt <hunt@cygnus.com> (find_pc_sect_line): If no symbol information is found, return correct pc anyway. (find_methods): Comment out an apparently bogus error message because it messes up Foundry. * serial.c - Martin M. Hunt <hunt@cygnus.com> (_initialize_serial): Add a description of "set remotelogbase". * findvar.c - Martin M. Hunt <hunt@cygnus.com> (write_register_gen): Add call to pc_changed_hook if the PC is being changed. * defs.h - Martin M. Hunt <hunt@cygnus.com> (pc_changed_hook): Define. * command.c - Martin M. Hunt <hunt@cygnus.com> (do_setshow_command): If no arguments are supplied, don't dump core, instead print out an error message. * breakpoint.c - Martin M. Hunt <hunt@cygnus.com> Make set_raw_breakpoint, set_breakpoint_count, and breakpoint_count non-static so they are accessible from gdbtk.c. (enable_breakpoint): Enable breakpoint with same disposition instead of changing all breakpoints to donttouch. * annotate.h - Keith Seitz <keiths@onions.cygnus.com> Add declarations for annotation hooks. * annotate.c - Keith Seitz <keiths@onions.cygnus.com> Add hooks: annotate_starting_hook, annotate_stopped_hook, annotate_signalled_hook, annotate_exited_hook. (annotate_starting): If hook exists, call it instead. (annotate_stopped): If hook exists, call it instead. (annotate_exited): If hook exists, call it instead. (annotate_signalled): If hook exists, call it instead. Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com> Merged changes from Foundry: list follows by author: - Tom Tromey <tromey@cygnus.com> * Makefile.in (gdbres.o): New target. (WINDRES): New define. * configure: Rebuilt. * configure.in (WINDRES): Define. (CONFIG_OBS): Include gdbres.o on Windows. * gdbtool.ico: New file. * gdb.rc: New file. * gdbtk.c (gdbtk_init): Call ide_create_messagebox_command. (gdbtk_cleanup): Call ide_interface_deregister_all. (gdbtk_init): Pass event handle to cleanup. (TclDebug): Use Tcl_Merge to construct command. (gdbtk_init): Call ide_create_cygwin_path_command. - Martin M. Hunt <hunt@cygnus.com> * gdbtk.c (gdb_set_bp): Set addr_string for bp. (gdb_get_breakpoint_info): Demangle function names in breakpoint info. Include "demangle.h". (gdb_loc, gdb_listfuncs): Demangle C++ function names. (gdb_set_bp): Properly quote filename to fix problems with spaces. Send pc back as a hex string. (gdb_listfuncs): Remove debugging line. Turn off some debugging lines. (breakpoint_notify): Return correct line number. (gdb_get_breakpoint_info): Return correct line number. (gdb_set_bp): New function to provide a better way to set breakpoints. (gdbtk_readline, gdbtk_readline_begin): Memory allocated by tcl needs to be freed by Tcl_Free(). (find_file_in_dir): Deleted. (gdb_find_file_command): Call full_lookup_symtab(). (gdb_listfuncs): Call full_lookup_symtab(). (full_lookup_symtab): New function. Like lookup_symtab except handles multiple files with the same basename, full pathnames, and always sets symtab->fullname. (gdb_loadfile): Call full_lookup_symtab(). Clear realloc'd memory. (gdb_loadfile): Don't tag lines without source. Tag source lines with source_tag. (gdb_find_file_command, find_file_in_dir): Rewrite. Now searches symtabs and psymtabs for a match on the partial or full filename. Returns the full pathname. (gdb_loadfile): Realloc additional memory if someone loads in a file with more than 160,000 lines. I don't know if this really works because I don't have enough memory to test it. (gdb_sourcelines): Deleted. (gdb_loadfile): New function. Takes a text widget and loads it with the contents of a file. Marks and tags source lines. (pc_changed): New function. (get_pc_register): Returns the value of the PC to GDB. (gdb_loc): If looking on the stack, return real pc along with calling source line. (gdb_loc): Return "" instead of "N/A" if filename is not found. (gdb_get_breakpoint_info): Same. (get_register): For Natural mode, set format to 0. Minor bugfixes from keiths. (TclDebug): New function for debugging use. (gdb_loc): Return correct PC for frames that are not the innermost frame. (gdb_listfiles): Rewritten to use object API. Now takes an optional dirname which will cause only files in that directory or its subdirectories to be returned. Now returns basenames instead of full pathnames. (gdb_cmd): Set/reset load_in_progress flag. (call_wrapper): Don't pop up dialog for errors in downloads; just abort download. (gdbtk_load_hash): Set return value correctly. - Keith Seitz <keiths@onions.cygnus.com> * gdbtk.c (gdbtk_init): Define the ui_loop_hook so that it can be called by routines which might block, allowing us to update the GUI. (gdbtk_wait): Move timer calls to annotation hooks. (gdbtk_init): Define the annotation hooks. (gdbtk_annotate_starting): New function for cygwin32 hosts. (gdbtk_annotate_stopped): New function for cygwin32 hosts. (gdbtk_annotate_exited): New function for cygwin32 hosts. (gdbtk_annotate_signalled): New function. for cygwin32 hosts. (gdbtk_init): Use gdbtk_print_frame_info hook. (gdbtk_print_frame_info): New function which sets current_source_symtab based on the given symtab and line info. (gdb_immediate_command): New function which does not buffer any output. (Contrast to gdb_cmd.) (gdb_prompt_command): New function to return gdb's prompt. (find_file_in_dir): New functon which searches source paths for a given filename. (gdb_find_file): New function which returns path to given file -- uses find_file_in_dir. (gdbtk_init): Install "gdb_immediate", "gdb_find_file", and "gdb_prompt" commands into interpreter. - Ian Lance Taylor <ian@cygnus.com> * gdbtk.c (gdbtk_timer_going): If __CYGWIN32__, new static variable. (gdb_cmd): If __CYGWIN32__, if executing the load command, call gdbtk_start_timer and gdbtk_stop_timer. (call_wrapper): If __CYGWIN32__, if the timer is going, turn it off. Clear load_in_progress. (x_event): If load_in_progress, quit if download_cancel_ok. (gdbtk_start_timer): Set gdbtk_timer_going. (gdbtk_stop_timer): Clear gdbtk_timer_going. (gdbtk_wait): Call x_event. (gdbtk_init): Call ide_create_win_grab_command if __CYGIN32__. (gdb_clear_file): Clear stop_pc.
1998-03-23 00:02:10 +01:00
if (annotation_level > 1)
{
printf_filtered ("\n\032\032starting\n");
}
}
gcc -Wall lint: * breakpoint.c (watchpoint_check): Remove unused variable b. * stack.c (print_frame_info): Move sp and buf inside #if. * eval.c (evaluate_subexp): Remove unused variables pp, mangle_ptr, ptr, and mangle_tstr. * valarith.c (value_x_binop): Remove unused variables mangle_tstr and mangle_ptr. * symtab.c (lookup_symtab): Put variable copy inside #if. (decode_line_1): Put variable q1 inside #if 0. * target.h: Declare target_link. * infrun.c (wait_for_inferior): Remove unused variables signame. * remote.c (remote_resume): Remove unused variable name. * c-exp.y (parse_number): Parenthesize operand of shift. * dbxread.c (record_minimal_symbol): Parenthesize operand of && (this is a semantic change, the warning seems to have detected a bug). * dbxread.c (end_psymtab): Move variable p1 inside #if. * coffread.c: Move variable temptype inside #if. * ch-typeprint.c (chill_type_print_base): Remove unused variable name. * ch-valprint.c: #include typeprint.h and ch-lang.h. (chill_val_print): Remove unused variable in_range. (chill_val_print): Remove statement "length > TYPE_LENGTH (type);". (chill_val_print): Add default case for switch. * stabsread.h: Declare stabsect_build_psymtabs. * os9kread.c (read_minimal_symbols): Make this return void. (os9k_symfile_read): Remove unused variables stb_exist and val. (os9k_symfile_init): Remove unused variable val. (fill_sym): Remove unused variable id. (read_os9k_psymtab): Put variable back_to inside #if 0. Remove unused variable nsl. Remove unused variable symfile_bfd. #if 0 unused variables lbrac_unmatched_complaint and lbrac_mismatch_complaint. Remove declaration for non-existent function os9k_next_symbol_text. * annotate.c, annotate.h: New files, containing a function for each annotation which outputs it. * Move breakpoints_changed from breakpoint.c to annotate.c. * breakpoint.c, blockframe.c, infrun.c, cp-valprint.c, main.c, printcmd.c, source.c, stack.c, utils.c, valprint.c: Use annotate.c functions to output annotations. * Makefile.in (OBS): Add annotate.o.
1994-05-13 20:18:57 +02:00
}
void
annotate_stopped ()
{
Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com> merged changes from Foundry (list follows by file/author): - Tom Tromey <tromey@cygnus.com> * Makefile.in (gdbres.o): New target. (WINDRES): New define. * configure: Rebuilt. * configure.in (WINDRES): Define. (CONFIG_OBS): Include gdbres.o on Windows. * gdbtool.ico: New file. * gdb.rc: New file. * ser-unix.c - Keith Seitz <keiths@onions.cygnus.com> (wait_for): Don't reset the timeout_remaining for CYGWIN32, since we now effectively poll the serial port. Don't reset the current_timeout, either, since this member is used by hardwire_readchar to track the timeout and call the ui_loop_hook. (hardwire_readchar): Poll the serial port for Cygwin32. We timeout every second, update the UI, and loop around doing this until we have hit the real timeout or we get data or an error. This will allow the UI to stay active while gdb is "blocked" talking to the target. - Martin M. Hunt <hunt@cygnus.com> (wait_for): Do reset current_timeout because it is only used to keep track of what the current timeout for the scb is. * top.c - Martin M. Hunt <hunt@cygnus.com> (quit_confirm): Change exit message again for GUI. (pc_changed_hook): Add prototype. - Tom Tromey <tromey@cygnus.com> (quit_confirm): Added missing `else'. (quit_confirm): Special-case message if init_ui_hook is set. * symtab.c - Martin M. Hunt <hunt@cygnus.com> (find_pc_sect_line): If no symbol information is found, return correct pc anyway. (find_methods): Comment out an apparently bogus error message because it messes up Foundry. * serial.c - Martin M. Hunt <hunt@cygnus.com> (_initialize_serial): Add a description of "set remotelogbase". * findvar.c - Martin M. Hunt <hunt@cygnus.com> (write_register_gen): Add call to pc_changed_hook if the PC is being changed. * defs.h - Martin M. Hunt <hunt@cygnus.com> (pc_changed_hook): Define. * command.c - Martin M. Hunt <hunt@cygnus.com> (do_setshow_command): If no arguments are supplied, don't dump core, instead print out an error message. * breakpoint.c - Martin M. Hunt <hunt@cygnus.com> Make set_raw_breakpoint, set_breakpoint_count, and breakpoint_count non-static so they are accessible from gdbtk.c. (enable_breakpoint): Enable breakpoint with same disposition instead of changing all breakpoints to donttouch. * annotate.h - Keith Seitz <keiths@onions.cygnus.com> Add declarations for annotation hooks. * annotate.c - Keith Seitz <keiths@onions.cygnus.com> Add hooks: annotate_starting_hook, annotate_stopped_hook, annotate_signalled_hook, annotate_exited_hook. (annotate_starting): If hook exists, call it instead. (annotate_stopped): If hook exists, call it instead. (annotate_exited): If hook exists, call it instead. (annotate_signalled): If hook exists, call it instead. Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com> Merged changes from Foundry: list follows by author: - Tom Tromey <tromey@cygnus.com> * Makefile.in (gdbres.o): New target. (WINDRES): New define. * configure: Rebuilt. * configure.in (WINDRES): Define. (CONFIG_OBS): Include gdbres.o on Windows. * gdbtool.ico: New file. * gdb.rc: New file. * gdbtk.c (gdbtk_init): Call ide_create_messagebox_command. (gdbtk_cleanup): Call ide_interface_deregister_all. (gdbtk_init): Pass event handle to cleanup. (TclDebug): Use Tcl_Merge to construct command. (gdbtk_init): Call ide_create_cygwin_path_command. - Martin M. Hunt <hunt@cygnus.com> * gdbtk.c (gdb_set_bp): Set addr_string for bp. (gdb_get_breakpoint_info): Demangle function names in breakpoint info. Include "demangle.h". (gdb_loc, gdb_listfuncs): Demangle C++ function names. (gdb_set_bp): Properly quote filename to fix problems with spaces. Send pc back as a hex string. (gdb_listfuncs): Remove debugging line. Turn off some debugging lines. (breakpoint_notify): Return correct line number. (gdb_get_breakpoint_info): Return correct line number. (gdb_set_bp): New function to provide a better way to set breakpoints. (gdbtk_readline, gdbtk_readline_begin): Memory allocated by tcl needs to be freed by Tcl_Free(). (find_file_in_dir): Deleted. (gdb_find_file_command): Call full_lookup_symtab(). (gdb_listfuncs): Call full_lookup_symtab(). (full_lookup_symtab): New function. Like lookup_symtab except handles multiple files with the same basename, full pathnames, and always sets symtab->fullname. (gdb_loadfile): Call full_lookup_symtab(). Clear realloc'd memory. (gdb_loadfile): Don't tag lines without source. Tag source lines with source_tag. (gdb_find_file_command, find_file_in_dir): Rewrite. Now searches symtabs and psymtabs for a match on the partial or full filename. Returns the full pathname. (gdb_loadfile): Realloc additional memory if someone loads in a file with more than 160,000 lines. I don't know if this really works because I don't have enough memory to test it. (gdb_sourcelines): Deleted. (gdb_loadfile): New function. Takes a text widget and loads it with the contents of a file. Marks and tags source lines. (pc_changed): New function. (get_pc_register): Returns the value of the PC to GDB. (gdb_loc): If looking on the stack, return real pc along with calling source line. (gdb_loc): Return "" instead of "N/A" if filename is not found. (gdb_get_breakpoint_info): Same. (get_register): For Natural mode, set format to 0. Minor bugfixes from keiths. (TclDebug): New function for debugging use. (gdb_loc): Return correct PC for frames that are not the innermost frame. (gdb_listfiles): Rewritten to use object API. Now takes an optional dirname which will cause only files in that directory or its subdirectories to be returned. Now returns basenames instead of full pathnames. (gdb_cmd): Set/reset load_in_progress flag. (call_wrapper): Don't pop up dialog for errors in downloads; just abort download. (gdbtk_load_hash): Set return value correctly. - Keith Seitz <keiths@onions.cygnus.com> * gdbtk.c (gdbtk_init): Define the ui_loop_hook so that it can be called by routines which might block, allowing us to update the GUI. (gdbtk_wait): Move timer calls to annotation hooks. (gdbtk_init): Define the annotation hooks. (gdbtk_annotate_starting): New function for cygwin32 hosts. (gdbtk_annotate_stopped): New function for cygwin32 hosts. (gdbtk_annotate_exited): New function for cygwin32 hosts. (gdbtk_annotate_signalled): New function. for cygwin32 hosts. (gdbtk_init): Use gdbtk_print_frame_info hook. (gdbtk_print_frame_info): New function which sets current_source_symtab based on the given symtab and line info. (gdb_immediate_command): New function which does not buffer any output. (Contrast to gdb_cmd.) (gdb_prompt_command): New function to return gdb's prompt. (find_file_in_dir): New functon which searches source paths for a given filename. (gdb_find_file): New function which returns path to given file -- uses find_file_in_dir. (gdbtk_init): Install "gdb_immediate", "gdb_find_file", and "gdb_prompt" commands into interpreter. - Ian Lance Taylor <ian@cygnus.com> * gdbtk.c (gdbtk_timer_going): If __CYGWIN32__, new static variable. (gdb_cmd): If __CYGWIN32__, if executing the load command, call gdbtk_start_timer and gdbtk_stop_timer. (call_wrapper): If __CYGWIN32__, if the timer is going, turn it off. Clear load_in_progress. (x_event): If load_in_progress, quit if download_cancel_ok. (gdbtk_start_timer): Set gdbtk_timer_going. (gdbtk_stop_timer): Clear gdbtk_timer_going. (gdbtk_wait): Call x_event. (gdbtk_init): Call ide_create_win_grab_command if __CYGIN32__. (gdb_clear_file): Clear stop_pc.
1998-03-23 00:02:10 +01:00
if (annotate_stopped_hook)
annotate_stopped_hook ();
else
{
if (annotation_level > 1)
printf_filtered ("\n\032\032stopped\n");
}
gcc -Wall lint: * breakpoint.c (watchpoint_check): Remove unused variable b. * stack.c (print_frame_info): Move sp and buf inside #if. * eval.c (evaluate_subexp): Remove unused variables pp, mangle_ptr, ptr, and mangle_tstr. * valarith.c (value_x_binop): Remove unused variables mangle_tstr and mangle_ptr. * symtab.c (lookup_symtab): Put variable copy inside #if. (decode_line_1): Put variable q1 inside #if 0. * target.h: Declare target_link. * infrun.c (wait_for_inferior): Remove unused variables signame. * remote.c (remote_resume): Remove unused variable name. * c-exp.y (parse_number): Parenthesize operand of shift. * dbxread.c (record_minimal_symbol): Parenthesize operand of && (this is a semantic change, the warning seems to have detected a bug). * dbxread.c (end_psymtab): Move variable p1 inside #if. * coffread.c: Move variable temptype inside #if. * ch-typeprint.c (chill_type_print_base): Remove unused variable name. * ch-valprint.c: #include typeprint.h and ch-lang.h. (chill_val_print): Remove unused variable in_range. (chill_val_print): Remove statement "length > TYPE_LENGTH (type);". (chill_val_print): Add default case for switch. * stabsread.h: Declare stabsect_build_psymtabs. * os9kread.c (read_minimal_symbols): Make this return void. (os9k_symfile_read): Remove unused variables stb_exist and val. (os9k_symfile_init): Remove unused variable val. (fill_sym): Remove unused variable id. (read_os9k_psymtab): Put variable back_to inside #if 0. Remove unused variable nsl. Remove unused variable symfile_bfd. #if 0 unused variables lbrac_unmatched_complaint and lbrac_mismatch_complaint. Remove declaration for non-existent function os9k_next_symbol_text. * annotate.c, annotate.h: New files, containing a function for each annotation which outputs it. * Move breakpoints_changed from breakpoint.c to annotate.c. * breakpoint.c, blockframe.c, infrun.c, cp-valprint.c, main.c, printcmd.c, source.c, stack.c, utils.c, valprint.c: Use annotate.c functions to output annotations. * Makefile.in (OBS): Add annotate.o.
1994-05-13 20:18:57 +02:00
}
void
annotate_exited (exitstatus)
int exitstatus;
{
Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com> merged changes from Foundry (list follows by file/author): - Tom Tromey <tromey@cygnus.com> * Makefile.in (gdbres.o): New target. (WINDRES): New define. * configure: Rebuilt. * configure.in (WINDRES): Define. (CONFIG_OBS): Include gdbres.o on Windows. * gdbtool.ico: New file. * gdb.rc: New file. * ser-unix.c - Keith Seitz <keiths@onions.cygnus.com> (wait_for): Don't reset the timeout_remaining for CYGWIN32, since we now effectively poll the serial port. Don't reset the current_timeout, either, since this member is used by hardwire_readchar to track the timeout and call the ui_loop_hook. (hardwire_readchar): Poll the serial port for Cygwin32. We timeout every second, update the UI, and loop around doing this until we have hit the real timeout or we get data or an error. This will allow the UI to stay active while gdb is "blocked" talking to the target. - Martin M. Hunt <hunt@cygnus.com> (wait_for): Do reset current_timeout because it is only used to keep track of what the current timeout for the scb is. * top.c - Martin M. Hunt <hunt@cygnus.com> (quit_confirm): Change exit message again for GUI. (pc_changed_hook): Add prototype. - Tom Tromey <tromey@cygnus.com> (quit_confirm): Added missing `else'. (quit_confirm): Special-case message if init_ui_hook is set. * symtab.c - Martin M. Hunt <hunt@cygnus.com> (find_pc_sect_line): If no symbol information is found, return correct pc anyway. (find_methods): Comment out an apparently bogus error message because it messes up Foundry. * serial.c - Martin M. Hunt <hunt@cygnus.com> (_initialize_serial): Add a description of "set remotelogbase". * findvar.c - Martin M. Hunt <hunt@cygnus.com> (write_register_gen): Add call to pc_changed_hook if the PC is being changed. * defs.h - Martin M. Hunt <hunt@cygnus.com> (pc_changed_hook): Define. * command.c - Martin M. Hunt <hunt@cygnus.com> (do_setshow_command): If no arguments are supplied, don't dump core, instead print out an error message. * breakpoint.c - Martin M. Hunt <hunt@cygnus.com> Make set_raw_breakpoint, set_breakpoint_count, and breakpoint_count non-static so they are accessible from gdbtk.c. (enable_breakpoint): Enable breakpoint with same disposition instead of changing all breakpoints to donttouch. * annotate.h - Keith Seitz <keiths@onions.cygnus.com> Add declarations for annotation hooks. * annotate.c - Keith Seitz <keiths@onions.cygnus.com> Add hooks: annotate_starting_hook, annotate_stopped_hook, annotate_signalled_hook, annotate_exited_hook. (annotate_starting): If hook exists, call it instead. (annotate_stopped): If hook exists, call it instead. (annotate_exited): If hook exists, call it instead. (annotate_signalled): If hook exists, call it instead. Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com> Merged changes from Foundry: list follows by author: - Tom Tromey <tromey@cygnus.com> * Makefile.in (gdbres.o): New target. (WINDRES): New define. * configure: Rebuilt. * configure.in (WINDRES): Define. (CONFIG_OBS): Include gdbres.o on Windows. * gdbtool.ico: New file. * gdb.rc: New file. * gdbtk.c (gdbtk_init): Call ide_create_messagebox_command. (gdbtk_cleanup): Call ide_interface_deregister_all. (gdbtk_init): Pass event handle to cleanup. (TclDebug): Use Tcl_Merge to construct command. (gdbtk_init): Call ide_create_cygwin_path_command. - Martin M. Hunt <hunt@cygnus.com> * gdbtk.c (gdb_set_bp): Set addr_string for bp. (gdb_get_breakpoint_info): Demangle function names in breakpoint info. Include "demangle.h". (gdb_loc, gdb_listfuncs): Demangle C++ function names. (gdb_set_bp): Properly quote filename to fix problems with spaces. Send pc back as a hex string. (gdb_listfuncs): Remove debugging line. Turn off some debugging lines. (breakpoint_notify): Return correct line number. (gdb_get_breakpoint_info): Return correct line number. (gdb_set_bp): New function to provide a better way to set breakpoints. (gdbtk_readline, gdbtk_readline_begin): Memory allocated by tcl needs to be freed by Tcl_Free(). (find_file_in_dir): Deleted. (gdb_find_file_command): Call full_lookup_symtab(). (gdb_listfuncs): Call full_lookup_symtab(). (full_lookup_symtab): New function. Like lookup_symtab except handles multiple files with the same basename, full pathnames, and always sets symtab->fullname. (gdb_loadfile): Call full_lookup_symtab(). Clear realloc'd memory. (gdb_loadfile): Don't tag lines without source. Tag source lines with source_tag. (gdb_find_file_command, find_file_in_dir): Rewrite. Now searches symtabs and psymtabs for a match on the partial or full filename. Returns the full pathname. (gdb_loadfile): Realloc additional memory if someone loads in a file with more than 160,000 lines. I don't know if this really works because I don't have enough memory to test it. (gdb_sourcelines): Deleted. (gdb_loadfile): New function. Takes a text widget and loads it with the contents of a file. Marks and tags source lines. (pc_changed): New function. (get_pc_register): Returns the value of the PC to GDB. (gdb_loc): If looking on the stack, return real pc along with calling source line. (gdb_loc): Return "" instead of "N/A" if filename is not found. (gdb_get_breakpoint_info): Same. (get_register): For Natural mode, set format to 0. Minor bugfixes from keiths. (TclDebug): New function for debugging use. (gdb_loc): Return correct PC for frames that are not the innermost frame. (gdb_listfiles): Rewritten to use object API. Now takes an optional dirname which will cause only files in that directory or its subdirectories to be returned. Now returns basenames instead of full pathnames. (gdb_cmd): Set/reset load_in_progress flag. (call_wrapper): Don't pop up dialog for errors in downloads; just abort download. (gdbtk_load_hash): Set return value correctly. - Keith Seitz <keiths@onions.cygnus.com> * gdbtk.c (gdbtk_init): Define the ui_loop_hook so that it can be called by routines which might block, allowing us to update the GUI. (gdbtk_wait): Move timer calls to annotation hooks. (gdbtk_init): Define the annotation hooks. (gdbtk_annotate_starting): New function for cygwin32 hosts. (gdbtk_annotate_stopped): New function for cygwin32 hosts. (gdbtk_annotate_exited): New function for cygwin32 hosts. (gdbtk_annotate_signalled): New function. for cygwin32 hosts. (gdbtk_init): Use gdbtk_print_frame_info hook. (gdbtk_print_frame_info): New function which sets current_source_symtab based on the given symtab and line info. (gdb_immediate_command): New function which does not buffer any output. (Contrast to gdb_cmd.) (gdb_prompt_command): New function to return gdb's prompt. (find_file_in_dir): New functon which searches source paths for a given filename. (gdb_find_file): New function which returns path to given file -- uses find_file_in_dir. (gdbtk_init): Install "gdb_immediate", "gdb_find_file", and "gdb_prompt" commands into interpreter. - Ian Lance Taylor <ian@cygnus.com> * gdbtk.c (gdbtk_timer_going): If __CYGWIN32__, new static variable. (gdb_cmd): If __CYGWIN32__, if executing the load command, call gdbtk_start_timer and gdbtk_stop_timer. (call_wrapper): If __CYGWIN32__, if the timer is going, turn it off. Clear load_in_progress. (x_event): If load_in_progress, quit if download_cancel_ok. (gdbtk_start_timer): Set gdbtk_timer_going. (gdbtk_stop_timer): Clear gdbtk_timer_going. (gdbtk_wait): Call x_event. (gdbtk_init): Call ide_create_win_grab_command if __CYGIN32__. (gdb_clear_file): Clear stop_pc.
1998-03-23 00:02:10 +01:00
if (annotate_exited_hook)
annotate_exited_hook ();
else
{
if (annotation_level > 1)
printf_filtered ("\n\032\032exited %d\n", exitstatus);
}
gcc -Wall lint: * breakpoint.c (watchpoint_check): Remove unused variable b. * stack.c (print_frame_info): Move sp and buf inside #if. * eval.c (evaluate_subexp): Remove unused variables pp, mangle_ptr, ptr, and mangle_tstr. * valarith.c (value_x_binop): Remove unused variables mangle_tstr and mangle_ptr. * symtab.c (lookup_symtab): Put variable copy inside #if. (decode_line_1): Put variable q1 inside #if 0. * target.h: Declare target_link. * infrun.c (wait_for_inferior): Remove unused variables signame. * remote.c (remote_resume): Remove unused variable name. * c-exp.y (parse_number): Parenthesize operand of shift. * dbxread.c (record_minimal_symbol): Parenthesize operand of && (this is a semantic change, the warning seems to have detected a bug). * dbxread.c (end_psymtab): Move variable p1 inside #if. * coffread.c: Move variable temptype inside #if. * ch-typeprint.c (chill_type_print_base): Remove unused variable name. * ch-valprint.c: #include typeprint.h and ch-lang.h. (chill_val_print): Remove unused variable in_range. (chill_val_print): Remove statement "length > TYPE_LENGTH (type);". (chill_val_print): Add default case for switch. * stabsread.h: Declare stabsect_build_psymtabs. * os9kread.c (read_minimal_symbols): Make this return void. (os9k_symfile_read): Remove unused variables stb_exist and val. (os9k_symfile_init): Remove unused variable val. (fill_sym): Remove unused variable id. (read_os9k_psymtab): Put variable back_to inside #if 0. Remove unused variable nsl. Remove unused variable symfile_bfd. #if 0 unused variables lbrac_unmatched_complaint and lbrac_mismatch_complaint. Remove declaration for non-existent function os9k_next_symbol_text. * annotate.c, annotate.h: New files, containing a function for each annotation which outputs it. * Move breakpoints_changed from breakpoint.c to annotate.c. * breakpoint.c, blockframe.c, infrun.c, cp-valprint.c, main.c, printcmd.c, source.c, stack.c, utils.c, valprint.c: Use annotate.c functions to output annotations. * Makefile.in (OBS): Add annotate.o.
1994-05-13 20:18:57 +02:00
}
void
annotate_signalled ()
{
Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com> merged changes from Foundry (list follows by file/author): - Tom Tromey <tromey@cygnus.com> * Makefile.in (gdbres.o): New target. (WINDRES): New define. * configure: Rebuilt. * configure.in (WINDRES): Define. (CONFIG_OBS): Include gdbres.o on Windows. * gdbtool.ico: New file. * gdb.rc: New file. * ser-unix.c - Keith Seitz <keiths@onions.cygnus.com> (wait_for): Don't reset the timeout_remaining for CYGWIN32, since we now effectively poll the serial port. Don't reset the current_timeout, either, since this member is used by hardwire_readchar to track the timeout and call the ui_loop_hook. (hardwire_readchar): Poll the serial port for Cygwin32. We timeout every second, update the UI, and loop around doing this until we have hit the real timeout or we get data or an error. This will allow the UI to stay active while gdb is "blocked" talking to the target. - Martin M. Hunt <hunt@cygnus.com> (wait_for): Do reset current_timeout because it is only used to keep track of what the current timeout for the scb is. * top.c - Martin M. Hunt <hunt@cygnus.com> (quit_confirm): Change exit message again for GUI. (pc_changed_hook): Add prototype. - Tom Tromey <tromey@cygnus.com> (quit_confirm): Added missing `else'. (quit_confirm): Special-case message if init_ui_hook is set. * symtab.c - Martin M. Hunt <hunt@cygnus.com> (find_pc_sect_line): If no symbol information is found, return correct pc anyway. (find_methods): Comment out an apparently bogus error message because it messes up Foundry. * serial.c - Martin M. Hunt <hunt@cygnus.com> (_initialize_serial): Add a description of "set remotelogbase". * findvar.c - Martin M. Hunt <hunt@cygnus.com> (write_register_gen): Add call to pc_changed_hook if the PC is being changed. * defs.h - Martin M. Hunt <hunt@cygnus.com> (pc_changed_hook): Define. * command.c - Martin M. Hunt <hunt@cygnus.com> (do_setshow_command): If no arguments are supplied, don't dump core, instead print out an error message. * breakpoint.c - Martin M. Hunt <hunt@cygnus.com> Make set_raw_breakpoint, set_breakpoint_count, and breakpoint_count non-static so they are accessible from gdbtk.c. (enable_breakpoint): Enable breakpoint with same disposition instead of changing all breakpoints to donttouch. * annotate.h - Keith Seitz <keiths@onions.cygnus.com> Add declarations for annotation hooks. * annotate.c - Keith Seitz <keiths@onions.cygnus.com> Add hooks: annotate_starting_hook, annotate_stopped_hook, annotate_signalled_hook, annotate_exited_hook. (annotate_starting): If hook exists, call it instead. (annotate_stopped): If hook exists, call it instead. (annotate_exited): If hook exists, call it instead. (annotate_signalled): If hook exists, call it instead. Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com> Merged changes from Foundry: list follows by author: - Tom Tromey <tromey@cygnus.com> * Makefile.in (gdbres.o): New target. (WINDRES): New define. * configure: Rebuilt. * configure.in (WINDRES): Define. (CONFIG_OBS): Include gdbres.o on Windows. * gdbtool.ico: New file. * gdb.rc: New file. * gdbtk.c (gdbtk_init): Call ide_create_messagebox_command. (gdbtk_cleanup): Call ide_interface_deregister_all. (gdbtk_init): Pass event handle to cleanup. (TclDebug): Use Tcl_Merge to construct command. (gdbtk_init): Call ide_create_cygwin_path_command. - Martin M. Hunt <hunt@cygnus.com> * gdbtk.c (gdb_set_bp): Set addr_string for bp. (gdb_get_breakpoint_info): Demangle function names in breakpoint info. Include "demangle.h". (gdb_loc, gdb_listfuncs): Demangle C++ function names. (gdb_set_bp): Properly quote filename to fix problems with spaces. Send pc back as a hex string. (gdb_listfuncs): Remove debugging line. Turn off some debugging lines. (breakpoint_notify): Return correct line number. (gdb_get_breakpoint_info): Return correct line number. (gdb_set_bp): New function to provide a better way to set breakpoints. (gdbtk_readline, gdbtk_readline_begin): Memory allocated by tcl needs to be freed by Tcl_Free(). (find_file_in_dir): Deleted. (gdb_find_file_command): Call full_lookup_symtab(). (gdb_listfuncs): Call full_lookup_symtab(). (full_lookup_symtab): New function. Like lookup_symtab except handles multiple files with the same basename, full pathnames, and always sets symtab->fullname. (gdb_loadfile): Call full_lookup_symtab(). Clear realloc'd memory. (gdb_loadfile): Don't tag lines without source. Tag source lines with source_tag. (gdb_find_file_command, find_file_in_dir): Rewrite. Now searches symtabs and psymtabs for a match on the partial or full filename. Returns the full pathname. (gdb_loadfile): Realloc additional memory if someone loads in a file with more than 160,000 lines. I don't know if this really works because I don't have enough memory to test it. (gdb_sourcelines): Deleted. (gdb_loadfile): New function. Takes a text widget and loads it with the contents of a file. Marks and tags source lines. (pc_changed): New function. (get_pc_register): Returns the value of the PC to GDB. (gdb_loc): If looking on the stack, return real pc along with calling source line. (gdb_loc): Return "" instead of "N/A" if filename is not found. (gdb_get_breakpoint_info): Same. (get_register): For Natural mode, set format to 0. Minor bugfixes from keiths. (TclDebug): New function for debugging use. (gdb_loc): Return correct PC for frames that are not the innermost frame. (gdb_listfiles): Rewritten to use object API. Now takes an optional dirname which will cause only files in that directory or its subdirectories to be returned. Now returns basenames instead of full pathnames. (gdb_cmd): Set/reset load_in_progress flag. (call_wrapper): Don't pop up dialog for errors in downloads; just abort download. (gdbtk_load_hash): Set return value correctly. - Keith Seitz <keiths@onions.cygnus.com> * gdbtk.c (gdbtk_init): Define the ui_loop_hook so that it can be called by routines which might block, allowing us to update the GUI. (gdbtk_wait): Move timer calls to annotation hooks. (gdbtk_init): Define the annotation hooks. (gdbtk_annotate_starting): New function for cygwin32 hosts. (gdbtk_annotate_stopped): New function for cygwin32 hosts. (gdbtk_annotate_exited): New function for cygwin32 hosts. (gdbtk_annotate_signalled): New function. for cygwin32 hosts. (gdbtk_init): Use gdbtk_print_frame_info hook. (gdbtk_print_frame_info): New function which sets current_source_symtab based on the given symtab and line info. (gdb_immediate_command): New function which does not buffer any output. (Contrast to gdb_cmd.) (gdb_prompt_command): New function to return gdb's prompt. (find_file_in_dir): New functon which searches source paths for a given filename. (gdb_find_file): New function which returns path to given file -- uses find_file_in_dir. (gdbtk_init): Install "gdb_immediate", "gdb_find_file", and "gdb_prompt" commands into interpreter. - Ian Lance Taylor <ian@cygnus.com> * gdbtk.c (gdbtk_timer_going): If __CYGWIN32__, new static variable. (gdb_cmd): If __CYGWIN32__, if executing the load command, call gdbtk_start_timer and gdbtk_stop_timer. (call_wrapper): If __CYGWIN32__, if the timer is going, turn it off. Clear load_in_progress. (x_event): If load_in_progress, quit if download_cancel_ok. (gdbtk_start_timer): Set gdbtk_timer_going. (gdbtk_stop_timer): Clear gdbtk_timer_going. (gdbtk_wait): Call x_event. (gdbtk_init): Call ide_create_win_grab_command if __CYGIN32__. (gdb_clear_file): Clear stop_pc.
1998-03-23 00:02:10 +01:00
if (annotate_signalled_hook)
annotate_signalled_hook ();
gcc -Wall lint: * breakpoint.c (watchpoint_check): Remove unused variable b. * stack.c (print_frame_info): Move sp and buf inside #if. * eval.c (evaluate_subexp): Remove unused variables pp, mangle_ptr, ptr, and mangle_tstr. * valarith.c (value_x_binop): Remove unused variables mangle_tstr and mangle_ptr. * symtab.c (lookup_symtab): Put variable copy inside #if. (decode_line_1): Put variable q1 inside #if 0. * target.h: Declare target_link. * infrun.c (wait_for_inferior): Remove unused variables signame. * remote.c (remote_resume): Remove unused variable name. * c-exp.y (parse_number): Parenthesize operand of shift. * dbxread.c (record_minimal_symbol): Parenthesize operand of && (this is a semantic change, the warning seems to have detected a bug). * dbxread.c (end_psymtab): Move variable p1 inside #if. * coffread.c: Move variable temptype inside #if. * ch-typeprint.c (chill_type_print_base): Remove unused variable name. * ch-valprint.c: #include typeprint.h and ch-lang.h. (chill_val_print): Remove unused variable in_range. (chill_val_print): Remove statement "length > TYPE_LENGTH (type);". (chill_val_print): Add default case for switch. * stabsread.h: Declare stabsect_build_psymtabs. * os9kread.c (read_minimal_symbols): Make this return void. (os9k_symfile_read): Remove unused variables stb_exist and val. (os9k_symfile_init): Remove unused variable val. (fill_sym): Remove unused variable id. (read_os9k_psymtab): Put variable back_to inside #if 0. Remove unused variable nsl. Remove unused variable symfile_bfd. #if 0 unused variables lbrac_unmatched_complaint and lbrac_mismatch_complaint. Remove declaration for non-existent function os9k_next_symbol_text. * annotate.c, annotate.h: New files, containing a function for each annotation which outputs it. * Move breakpoints_changed from breakpoint.c to annotate.c. * breakpoint.c, blockframe.c, infrun.c, cp-valprint.c, main.c, printcmd.c, source.c, stack.c, utils.c, valprint.c: Use annotate.c functions to output annotations. * Makefile.in (OBS): Add annotate.o.
1994-05-13 20:18:57 +02:00
if (annotation_level > 1)
printf_filtered ("\n\032\032signalled\n");
}
void
annotate_signal_name ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032signal-name\n");
}
void
annotate_signal_name_end ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032signal-name-end\n");
}
void
annotate_signal_string ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032signal-string\n");
}
void
annotate_signal_string_end ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032signal-string-end\n");
}
void
annotate_signal ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032signal\n");
}
void
annotate_breakpoints_headers ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032breakpoints-headers\n");
}
void
annotate_field (num)
int num;
{
if (annotation_level > 1)
printf_filtered ("\n\032\032field %d\n", num);
}
void
annotate_breakpoints_table ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032breakpoints-table\n");
}
void
annotate_record ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032record\n");
}
void
annotate_breakpoints_table_end ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032breakpoints-table-end\n");
}
void
annotate_frames_invalid ()
{
if (annotation_level > 1)
{
target_terminal_ours ();
printf_unfiltered ("\n\032\032frames-invalid\n");
}
}
void
annotate_field_begin (type)
struct type *type;
{
if (annotation_level > 1)
{
printf_filtered ("\n\032\032field-begin ");
print_value_flags (type);
printf_filtered ("\n");
}
}
void
annotate_field_name_end ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032field-name-end\n");
}
void
annotate_field_value ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032field-value\n");
}
void
annotate_field_end ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032field-end\n");
gcc -Wall lint: * breakpoint.c (watchpoint_check): Remove unused variable b. * stack.c (print_frame_info): Move sp and buf inside #if. * eval.c (evaluate_subexp): Remove unused variables pp, mangle_ptr, ptr, and mangle_tstr. * valarith.c (value_x_binop): Remove unused variables mangle_tstr and mangle_ptr. * symtab.c (lookup_symtab): Put variable copy inside #if. (decode_line_1): Put variable q1 inside #if 0. * target.h: Declare target_link. * infrun.c (wait_for_inferior): Remove unused variables signame. * remote.c (remote_resume): Remove unused variable name. * c-exp.y (parse_number): Parenthesize operand of shift. * dbxread.c (record_minimal_symbol): Parenthesize operand of && (this is a semantic change, the warning seems to have detected a bug). * dbxread.c (end_psymtab): Move variable p1 inside #if. * coffread.c: Move variable temptype inside #if. * ch-typeprint.c (chill_type_print_base): Remove unused variable name. * ch-valprint.c: #include typeprint.h and ch-lang.h. (chill_val_print): Remove unused variable in_range. (chill_val_print): Remove statement "length > TYPE_LENGTH (type);". (chill_val_print): Add default case for switch. * stabsread.h: Declare stabsect_build_psymtabs. * os9kread.c (read_minimal_symbols): Make this return void. (os9k_symfile_read): Remove unused variables stb_exist and val. (os9k_symfile_init): Remove unused variable val. (fill_sym): Remove unused variable id. (read_os9k_psymtab): Put variable back_to inside #if 0. Remove unused variable nsl. Remove unused variable symfile_bfd. #if 0 unused variables lbrac_unmatched_complaint and lbrac_mismatch_complaint. Remove declaration for non-existent function os9k_next_symbol_text. * annotate.c, annotate.h: New files, containing a function for each annotation which outputs it. * Move breakpoints_changed from breakpoint.c to annotate.c. * breakpoint.c, blockframe.c, infrun.c, cp-valprint.c, main.c, printcmd.c, source.c, stack.c, utils.c, valprint.c: Use annotate.c functions to output annotations. * Makefile.in (OBS): Add annotate.o.
1994-05-13 20:18:57 +02:00
}
void
annotate_quit ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032quit\n");
}
void
annotate_error ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032error\n");
}
void
annotate_error_begin ()
{
if (annotation_level > 1)
fprintf_filtered (gdb_stderr, "\n\032\032error-begin\n");
}
void
annotate_value_history_begin (histindex, type)
int histindex;
struct type *type;
{
if (annotation_level > 1)
{
printf_filtered ("\n\032\032value-history-begin %d ", histindex);
print_value_flags (type);
printf_filtered ("\n");
}
}
void
annotate_value_begin (type)
struct type *type;
{
if (annotation_level > 1)
{
printf_filtered ("\n\032\032value-begin ");
print_value_flags (type);
printf_filtered ("\n");
}
}
void
annotate_value_history_value ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032value-history-value\n");
}
void
annotate_value_history_end ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032value-history-end\n");
}
void
annotate_value_end ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032value-end\n");
}
void
annotate_display_begin ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032display-begin\n");
}
void
annotate_display_number_end ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032display-number-end\n");
}
void
annotate_display_format ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032display-format\n");
}
void
annotate_display_expression ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032display-expression\n");
}
void
annotate_display_expression_end ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032display-expression-end\n");
}
void
annotate_display_value ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032display-value\n");
}
void
annotate_display_end ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032display-end\n");
}
void
annotate_arg_begin ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032arg-begin\n");
}
void
annotate_arg_name_end ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032arg-name-end\n");
}
void
annotate_arg_value (type)
struct type *type;
{
if (annotation_level > 1)
{
printf_filtered ("\n\032\032arg-value ");
print_value_flags (type);
printf_filtered ("\n");
}
}
void
annotate_arg_end ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032arg-end\n");
}
void
annotate_source (filename, line, character, mid, pc)
char *filename;
int line;
int character;
int mid;
CORE_ADDR pc;
{
if (annotation_level > 1)
printf_filtered ("\n\032\032source ");
else
printf_filtered ("\032\032");
printf_filtered ("%s:%d:%d:%s:0x", filename,
gcc -Wall lint: * breakpoint.c (watchpoint_check): Remove unused variable b. * stack.c (print_frame_info): Move sp and buf inside #if. * eval.c (evaluate_subexp): Remove unused variables pp, mangle_ptr, ptr, and mangle_tstr. * valarith.c (value_x_binop): Remove unused variables mangle_tstr and mangle_ptr. * symtab.c (lookup_symtab): Put variable copy inside #if. (decode_line_1): Put variable q1 inside #if 0. * target.h: Declare target_link. * infrun.c (wait_for_inferior): Remove unused variables signame. * remote.c (remote_resume): Remove unused variable name. * c-exp.y (parse_number): Parenthesize operand of shift. * dbxread.c (record_minimal_symbol): Parenthesize operand of && (this is a semantic change, the warning seems to have detected a bug). * dbxread.c (end_psymtab): Move variable p1 inside #if. * coffread.c: Move variable temptype inside #if. * ch-typeprint.c (chill_type_print_base): Remove unused variable name. * ch-valprint.c: #include typeprint.h and ch-lang.h. (chill_val_print): Remove unused variable in_range. (chill_val_print): Remove statement "length > TYPE_LENGTH (type);". (chill_val_print): Add default case for switch. * stabsread.h: Declare stabsect_build_psymtabs. * os9kread.c (read_minimal_symbols): Make this return void. (os9k_symfile_read): Remove unused variables stb_exist and val. (os9k_symfile_init): Remove unused variable val. (fill_sym): Remove unused variable id. (read_os9k_psymtab): Put variable back_to inside #if 0. Remove unused variable nsl. Remove unused variable symfile_bfd. #if 0 unused variables lbrac_unmatched_complaint and lbrac_mismatch_complaint. Remove declaration for non-existent function os9k_next_symbol_text. * annotate.c, annotate.h: New files, containing a function for each annotation which outputs it. * Move breakpoints_changed from breakpoint.c to annotate.c. * breakpoint.c, blockframe.c, infrun.c, cp-valprint.c, main.c, printcmd.c, source.c, stack.c, utils.c, valprint.c: Use annotate.c functions to output annotations. * Makefile.in (OBS): Add annotate.o.
1994-05-13 20:18:57 +02:00
line, character,
mid ? "middle" : "beg");
print_address_numeric (pc, 0, gdb_stdout);
printf_filtered ("\n");
}
void
annotate_frame_begin (level, pc)
int level;
CORE_ADDR pc;
{
if (annotation_level > 1)
{
printf_filtered ("\n\032\032frame-begin %d 0x", level);
gcc -Wall lint: * breakpoint.c (watchpoint_check): Remove unused variable b. * stack.c (print_frame_info): Move sp and buf inside #if. * eval.c (evaluate_subexp): Remove unused variables pp, mangle_ptr, ptr, and mangle_tstr. * valarith.c (value_x_binop): Remove unused variables mangle_tstr and mangle_ptr. * symtab.c (lookup_symtab): Put variable copy inside #if. (decode_line_1): Put variable q1 inside #if 0. * target.h: Declare target_link. * infrun.c (wait_for_inferior): Remove unused variables signame. * remote.c (remote_resume): Remove unused variable name. * c-exp.y (parse_number): Parenthesize operand of shift. * dbxread.c (record_minimal_symbol): Parenthesize operand of && (this is a semantic change, the warning seems to have detected a bug). * dbxread.c (end_psymtab): Move variable p1 inside #if. * coffread.c: Move variable temptype inside #if. * ch-typeprint.c (chill_type_print_base): Remove unused variable name. * ch-valprint.c: #include typeprint.h and ch-lang.h. (chill_val_print): Remove unused variable in_range. (chill_val_print): Remove statement "length > TYPE_LENGTH (type);". (chill_val_print): Add default case for switch. * stabsread.h: Declare stabsect_build_psymtabs. * os9kread.c (read_minimal_symbols): Make this return void. (os9k_symfile_read): Remove unused variables stb_exist and val. (os9k_symfile_init): Remove unused variable val. (fill_sym): Remove unused variable id. (read_os9k_psymtab): Put variable back_to inside #if 0. Remove unused variable nsl. Remove unused variable symfile_bfd. #if 0 unused variables lbrac_unmatched_complaint and lbrac_mismatch_complaint. Remove declaration for non-existent function os9k_next_symbol_text. * annotate.c, annotate.h: New files, containing a function for each annotation which outputs it. * Move breakpoints_changed from breakpoint.c to annotate.c. * breakpoint.c, blockframe.c, infrun.c, cp-valprint.c, main.c, printcmd.c, source.c, stack.c, utils.c, valprint.c: Use annotate.c functions to output annotations. * Makefile.in (OBS): Add annotate.o.
1994-05-13 20:18:57 +02:00
print_address_numeric (pc, 0, gdb_stdout);
printf_filtered ("\n");
}
}
void
annotate_function_call ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032function-call\n");
}
void
annotate_signal_handler_caller ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032signal-handler-caller\n");
}
void
annotate_frame_address ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032frame-address\n");
}
void
annotate_frame_address_end ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032frame-address-end\n");
}
void
annotate_frame_function_name ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032frame-function-name\n");
}
void
annotate_frame_args ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032frame-args\n");
}
void
annotate_frame_source_begin ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032frame-source-begin\n");
}
void
annotate_frame_source_file ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032frame-source-file\n");
}
void
annotate_frame_source_file_end ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032frame-source-file-end\n");
}
void
annotate_frame_source_line ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032frame-source-line\n");
}
void
annotate_frame_source_end ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032frame-source-end\n");
}
void
annotate_frame_where ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032frame-where\n");
}
void
annotate_frame_end ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032frame-end\n");
}
void
annotate_array_section_begin (index, elttype)
int index;
struct type *elttype;
{
if (annotation_level > 1)
{
printf_filtered ("\n\032\032array-section-begin %d ", index);
print_value_flags (elttype);
printf_filtered ("\n");
}
}
void
annotate_elt_rep (repcount)
unsigned int repcount;
{
if (annotation_level > 1)
printf_filtered ("\n\032\032elt-rep %u\n", repcount);
}
void
annotate_elt_rep_end ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032elt-rep-end\n");
}
void
annotate_elt ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032elt\n");
}
void
annotate_array_section_end ()
{
if (annotation_level > 1)
printf_filtered ("\n\032\032array-section-end\n");
}
static void
breakpoint_changed (b)
struct breakpoint *b;
{
breakpoints_changed ();
}
void
_initialize_annotate ()
{
if (annotation_level > 1)
{
delete_breakpoint_hook = breakpoint_changed;
* annotate.c, breakpoint.c, defs.h, gdbtk.c, top.c: Replace enable/disable_breakpoint_hook with modify_breakpoint_hook. * gdbtk.c: General cleanups, get rid of unused variables. Redo handling of stdout/stderr to just return output as the result of the tcl command that caused the output. Cleanup -Wall stuff. * (breakpoint_notify): Now returns just action and breakpoint number. * (gdb_get_breakpoint_list): New routine. Does the obvious. * (gdb_get_breakpoint_info): Mostly derived from the old breakpoint_notify, but returns lots more info. * (dsprintf_append_element): Helper routine, works like printf, but appends a tcl element onto the specified DString. Good for building up lists as return values. * (gdbtk_enable/disable_breakpoint): Go away. Replaced with gdbtk_modify_breakpoint. * (*many routines*): Use new result protocol. * (call_wrapper): Make sure that recursive calls don't trash results. * gdbtk.tcl: New windows, autocmd, and breakpoints. * (gdbtk_tcl_fputs): Don't use $current_output_win redirection anymore. It's not needed (in fact, this routine may not be needed anymore). * (gdbtk_tcl_breakpoint): Change to reflect new breakpoint notification protocol. * (gdbtk_tcl_busy gdbtk_tcl_idle): Straighten out buttons, remove catches. * (interactive_cmd): Use this wrapper around button invocations of many commands. This will catch errors and put the results into the command window. It also updates all the other windows. * Also, change reliefs of most things to sunken. This actually looks better. * (create_file_win): Fix margin binding to allow breakpoints to work again. * (create_asm_win): Use return value of gdb_disassemble instead of implicit I/O to the command window. * (create_command_window): Use new result protocol to get output from commands.
1995-02-15 02:45:39 +01:00
modify_breakpoint_hook = breakpoint_changed;
}
}