aboutsummaryrefslogtreecommitdiff
path: root/gdb/infrun.c
diff options
context:
space:
mode:
authorJim Kingdon <jkingdon@engr.sgi.com>1994-05-13 18:18:57 +0000
committerJim Kingdon <jkingdon@engr.sgi.com>1994-05-13 18:18:57 +0000
commit1c95d7ab2e12e00756d21ef44c7539f8f9edc56f (patch)
tree1366d0687b8ad6294d7cbb151227f81b4f3280da /gdb/infrun.c
parentf3e72e3771ea66fb319fe96b96403ef212dbfb50 (diff)
downloadgdb-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.c52
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