diff options
author | Jim Kingdon <jkingdon@engr.sgi.com> | 1994-05-13 18:18:57 +0000 |
---|---|---|
committer | Jim Kingdon <jkingdon@engr.sgi.com> | 1994-05-13 18:18:57 +0000 |
commit | 1c95d7ab2e12e00756d21ef44c7539f8f9edc56f (patch) | |
tree | 1366d0687b8ad6294d7cbb151227f81b4f3280da /gdb/infrun.c | |
parent | f3e72e3771ea66fb319fe96b96403ef212dbfb50 (diff) | |
download | gdb-1c95d7ab2e12e00756d21ef44c7539f8f9edc56f.zip gdb-1c95d7ab2e12e00756d21ef44c7539f8f9edc56f.tar.gz gdb-1c95d7ab2e12e00756d21ef44c7539f8f9edc56f.tar.bz2 |
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.
Diffstat (limited to 'gdb/infrun.c')
-rw-r--r-- | gdb/infrun.c | 52 |
1 files changed, 39 insertions, 13 deletions
diff --git a/gdb/infrun.c b/gdb/infrun.c index dfe2cc0..4c39237 100644 --- a/gdb/infrun.c +++ b/gdb/infrun.c @@ -30,6 +30,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "gdbcmd.h" #include "target.h" #include "thread.h" +#include "annotate.h" #include <signal.h> @@ -326,6 +327,8 @@ The same program may be running in another process."); else if (!signal_program[stop_signal]) stop_signal = TARGET_SIGNAL_0; + annotate_starting (); + /* Resume inferior. */ resume (oneproc || step || bpstat_should_step (), stop_signal); @@ -434,12 +437,12 @@ wait_for_inferior () while (1) { + pid = target_wait (-1, &w); + /* Clean up saved state that will become invalid. */ flush_cached_frames (); registers_changed (); - pid = target_wait (-1, &w); - switch (w.kind) { case TARGET_WAITKIND_LOADED: @@ -458,6 +461,7 @@ wait_for_inferior () case TARGET_WAITKIND_EXITED: target_terminal_ours (); /* Must do this before mourn anyway */ + annotate_exited (w.value.integer); if (w.value.integer) printf_filtered ("\nProgram exited with code 0%o.\n", (unsigned int)w.value.integer); @@ -476,10 +480,17 @@ wait_for_inferior () stop_print_frame = 0; stop_signal = w.value.sig; target_terminal_ours (); /* Must do this before mourn anyway */ + annotate_signalled (); target_kill (); /* kill mourns as well */ - printf_filtered ("\nProgram terminated with signal %s, %s.\n", - target_signal_to_name (stop_signal), - target_signal_to_string (stop_signal)); + printf_filtered ("\nProgram terminated with signal "); + annotate_signal_name (); + printf_filtered ("%s", target_signal_to_name (stop_signal)); + annotate_signal_name_end (); + printf_filtered (", "); + annotate_signal_string (); + printf_filtered ("%s", target_signal_to_string (stop_signal)); + annotate_signal_string_end (); + printf_filtered (".\n"); printf_filtered ("The program no longer exists.\n"); gdb_flush (gdb_stdout); @@ -561,8 +572,6 @@ wait_for_inferior () { if (signal_print[stop_signal]) { - char *signame; - printed = 1; target_terminal_ours_for_output (); printf_filtered ("\nProgram received signal %s, %s.\n", @@ -657,7 +666,16 @@ switch_thread: { remove_breakpoints (); resume (1, 0); + + /* FIXME: This is bogus. You can't interact with the + inferior except when it is stopped. It apparently + happens to work on Irix4, but it depends on /proc + allowing us to muck with the memory of a running process, + and the kernel deciding to run one instruction of the + inferior before it executes our insert_breakpoints code, + which seems like an awfully dubious assumption. */ insert_breakpoints (); + continue; } #endif @@ -781,12 +799,18 @@ switch_thread: if (signal_print[stop_signal]) { - char *signame; printed = 1; target_terminal_ours_for_output (); - printf_filtered ("\nProgram received signal %s, %s.\n", - target_signal_to_name (stop_signal), - target_signal_to_string (stop_signal)); + annotate_signal (); + printf_filtered ("\nProgram received signal "); + annotate_signal_name (); + printf_filtered ("%s", target_signal_to_name (stop_signal)); + annotate_signal_name_end (); + printf_filtered (", "); + annotate_signal_string (); + printf_filtered ("%s", target_signal_to_string (stop_signal)); + annotate_signal_string_end (); + printf_filtered (".\n"); gdb_flush (gdb_stdout); } if (signal_stop[stop_signal]) @@ -1410,7 +1434,7 @@ Further execution is probably impossible.\n"); disable_current_display (); if (step_multi && stop_step) - return; + goto done; target_terminal_ours (); @@ -1423,7 +1447,7 @@ Further execution is probably impossible.\n"); } if (!target_has_stack) - return; + goto done; /* Select innermost stack frame except on return from a stack dummy routine, or if the program has exited. Print it without a level number if @@ -1465,6 +1489,8 @@ Further execution is probably impossible.\n"); stop_pc = read_pc(); select_frame (get_current_frame (), 0); } + done: + annotate_stopped (); } static int |