#endif
}
-/* Call command_loop. If it happens to return, pass that through as a
- non-zero return status. */
+/* Call command_loop. */
-static int
-captured_command_loop (void *data)
+static void
+captured_command_loop ()
{
struct ui *ui = current_ui;
check to detect bad FUNCs code. */
do_cleanups (all_cleanups ());
/* If the command_loop returned, normally (rather than threw an
- error) we try to quit. If the quit is aborted, catch_errors()
- which called this catch the signal and restart the command
- loop. */
+ error) we try to quit. If the quit is aborted, our caller
+ catches the signal and restarts the command loop. */
quit_command (NULL, ui->instream == ui->stdin_stream);
- return 1;
}
/* Handle command errors thrown from within catch_command_errors. */
int save_auto_load;
struct objfile *objfile;
- struct cleanup *chain;
-
#ifdef HAVE_SBRK
/* Set this before constructing scoped_command_stats. */
lim_at_start = (char *) sbrk (0);
setvbuf (stderr, NULL, _IONBF, BUFSIZ);
#endif
- main_ui = new_ui (stdin, stdout, stderr);
+ main_ui = new ui (stdin, stdout, stderr);
current_ui = main_ui;
gdb_stdtargerr = gdb_stderr; /* for moment */
change - SET_TOP_LEVEL() - has been eliminated. */
while (1)
{
- catch_errors (captured_command_loop, 0, "", RETURN_MASK_ALL);
+ TRY
+ {
+ captured_command_loop ();
+ }
+ CATCH (ex, RETURN_MASK_ALL)
+ {
+ exception_print (gdb_stderr, ex);
+ }
+ END_CATCH
}
/* No exit -- exit is through quit_command. */
}