* configure.ac: Use AC_CHECK_DECLS instead of gcc_AC_CHECK_DECLS
[deliverable/binutils-gdb.git] / gdb / top.c
index f68d618631e9a6418f22d589749a01ec069a0a65..f033c07015ec632f569f871d27bcc71f5f7b3cbd 100644 (file)
--- a/gdb/top.c
+++ b/gdb/top.c
@@ -1,7 +1,7 @@
 /* Top level stuff for GDB, the GNU debugger.
 
    Copyright 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
-   1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
+   1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
    Free Software Foundation, Inc.
 
    This file is part of GDB.
@@ -30,6 +30,7 @@
 #include "cli/cli-decode.h"
 #include "symtab.h"
 #include "inferior.h"
+#include "exceptions.h"
 #include <signal.h>
 #include "target.h"
 #include "breakpoint.h"
@@ -55,8 +56,6 @@
 
 #include <sys/types.h>
 
-#include <setjmp.h>
-
 #include "event-top.h"
 #include "gdb_string.h"
 #include "gdb_stat.h"
@@ -199,7 +198,7 @@ void (*deprecated_init_ui_hook) (char *argv0);
    steal control from a real user interface's event loop. It returns
    non-zero if the user is requesting a detach, zero otherwise. */
 
-int (*ui_loop_hook) (int);
+int (*deprecated_ui_loop_hook) (int);
 
 /* Called instead of command_loop at top level.  Can be invoked via
    throw_exception().  */
@@ -290,296 +289,11 @@ void (*deprecated_context_hook) (int id);
 /* Takes control from error ().  Typically used to prevent longjmps out of the
    middle of the GUI.  Usually used in conjunction with a catch routine.  */
 
-NORETURN void (*deprecated_error_hook) (void) ATTR_NORETURN;
-\f
-
-/* One should use catch_errors rather than manipulating these
-   directly.  */
-#if defined(HAVE_SIGSETJMP)
-#define SIGJMP_BUF             sigjmp_buf
-#define SIGSETJMP(buf)         sigsetjmp((buf), 1)
-#define SIGLONGJMP(buf,val)    siglongjmp((buf), (val))
-#else
-#define SIGJMP_BUF             jmp_buf
-#define SIGSETJMP(buf)         setjmp(buf)
-#define SIGLONGJMP(buf,val)    longjmp((buf), (val))
-#endif
-
-/* Where to go for throw_exception().  */
-static SIGJMP_BUF *catch_return;
-
-/* Return for reason REASON to the nearest containing catch_errors().  */
-
-NORETURN void
-throw_exception (enum return_reason reason)
-{
-  quit_flag = 0;
-  immediate_quit = 0;
-
-  /* Perhaps it would be cleaner to do this via the cleanup chain (not sure
-     I can think of a reason why that is vital, though).  */
-  bpstat_clear_actions (stop_bpstat);  /* Clear queued breakpoint commands */
-
-  disable_current_display ();
-  do_cleanups (ALL_CLEANUPS);
-  if (event_loop_p && target_can_async_p () && !target_executing)
-    do_exec_cleanups (ALL_CLEANUPS);
-  if (event_loop_p && sync_execution)
-    do_exec_error_cleanups (ALL_CLEANUPS);
-
-  if (annotation_level > 1)
-    switch (reason)
-      {
-      case RETURN_QUIT:
-       annotate_quit ();
-       break;
-      case RETURN_ERROR:
-       annotate_error ();
-       break;
-      }
-
-  /* Jump to the containing catch_errors() call, communicating REASON
-     to that call via setjmp's return value.  Note that REASON can't
-     be zero, by definition in defs.h. */
-
-  (NORETURN void) SIGLONGJMP (*catch_return, (int) reason);
-}
-
-/* Call FUNC() with args FUNC_UIOUT and FUNC_ARGS, catching any
-   errors.  Set FUNC_CAUGHT to an ``enum return_reason'' if the
-   function is aborted (using throw_exception() or zero if the
-   function returns normally.  Set FUNC_VAL to the value returned by
-   the function or 0 if the function was aborted.
-
-   Must not be called with immediate_quit in effect (bad things might
-   happen, say we got a signal in the middle of a memcpy to quit_return).
-   This is an OK restriction; with very few exceptions immediate_quit can
-   be replaced by judicious use of QUIT.
-
-   MASK specifies what to catch; it is normally set to
-   RETURN_MASK_ALL, if for no other reason than that the code which
-   calls catch_errors might not be set up to deal with a quit which
-   isn't caught.  But if the code can deal with it, it generally
-   should be RETURN_MASK_ERROR, unless for some reason it is more
-   useful to abort only the portion of the operation inside the
-   catch_errors.  Note that quit should return to the command line
-   fairly quickly, even if some further processing is being done.  */
-
-/* MAYBE: cagney/1999-11-05: catch_errors() in conjunction with
-   error() et.al. could maintain a set of flags that indicate the the
-   current state of each of the longjmp buffers.  This would give the
-   longjmp code the chance to detect a longjmp botch (before it gets
-   to longjmperror()).  Prior to 1999-11-05 this wasn't possible as
-   code also randomly used a SET_TOP_LEVEL macro that directly
-   initialize the longjmp buffers. */
-
-/* MAYBE: cagney/1999-11-05: Should the catch_errors and cleanups code
-   be consolidated into a single file instead of being distributed
-   between utils.c and top.c? */
-
-static void
-catcher (catch_exceptions_ftype *func,
-        struct ui_out *func_uiout,
-        void *func_args,
-        int *func_val,
-        enum return_reason *func_caught,
-        char *errstring,
-        char **gdberrmsg,
-        return_mask mask)
-{
-  SIGJMP_BUF *saved_catch;
-  SIGJMP_BUF catch;
-  struct cleanup *saved_cleanup_chain;
-  char *saved_error_pre_print;
-  char *saved_quit_pre_print;
-  struct ui_out *saved_uiout;
-
-  /* Return value from SIGSETJMP(): enum return_reason if error or
-     quit caught, 0 otherwise. */
-  int caught;
-
-  /* Return value from FUNC(): Hopefully non-zero. Explicitly set to
-     zero if an error quit was caught.  */
-  int val;
-
-  /* Override error/quit messages during FUNC. */
-
-  saved_error_pre_print = error_pre_print;
-  saved_quit_pre_print = quit_pre_print;
-
-  if (mask & RETURN_MASK_ERROR)
-    error_pre_print = errstring;
-  if (mask & RETURN_MASK_QUIT)
-    quit_pre_print = errstring;
-
-  /* Override the global ``struct ui_out'' builder.  */
-
-  saved_uiout = uiout;
-  uiout = func_uiout;
-
-  /* Prevent error/quit during FUNC from calling cleanups established
-     prior to here. */
-
-  saved_cleanup_chain = save_cleanups ();
-
-  /* Call FUNC, catching error/quit events. */
-
-  saved_catch = catch_return;
-  catch_return = &catch;
-  caught = SIGSETJMP (catch);
-  if (!caught)
-    val = (*func) (func_uiout, func_args);
-  else
-    {
-      val = 0;
-      /* If caller wants a copy of the low-level error message, make one.  
-         This is used in the case of a silent error whereby the caller
-         may optionally want to issue the message.  */
-      if (gdberrmsg)
-       *gdberrmsg = error_last_message ();
-    }
-  catch_return = saved_catch;
-
-  /* FIXME: cagney/1999-11-05: A correct FUNC implementation will
-     clean things up (restoring the cleanup chain) to the state they
-     were just prior to the call.  Unfortunately, many FUNC's are not
-     that well behaved.  This could be fixed by adding either a
-     do_cleanups call (to cover the problem) or an assertion check to
-     detect bad FUNCs code. */
-
-  /* Restore the cleanup chain, the error/quit messages, and the uiout
-     builder, to their original states. */
-
-  restore_cleanups (saved_cleanup_chain);
-
-  uiout = saved_uiout;
-
-  if (mask & RETURN_MASK_QUIT)
-    quit_pre_print = saved_quit_pre_print;
-  if (mask & RETURN_MASK_ERROR)
-    error_pre_print = saved_error_pre_print;
-
-  /* Return normally if no error/quit event occurred or this catcher
-     can handle this exception.  The caller analyses the func return
-     values.  */
-
-  if (!caught || (mask & RETURN_MASK (caught)))
-    {
-      *func_val = val;
-      *func_caught = caught;
-      return;
-    }
-
-  /* The caller didn't request that the event be caught, relay the
-     event to the next containing catch_errors(). */
-
-  throw_exception (caught);
-}
-
-int
-catch_exceptions (struct ui_out *uiout,
-                 catch_exceptions_ftype *func,
-                 void *func_args,
-                 char *errstring,
-                 return_mask mask)
-{
-  int val;
-  enum return_reason caught;
-  catcher (func, uiout, func_args, &val, &caught, errstring, NULL, mask);
-  gdb_assert (val >= 0);
-  gdb_assert (caught <= 0);
-  if (caught < 0)
-    return caught;
-  return val;
-}
-
-int
-catch_exceptions_with_msg (struct ui_out *uiout,
-                          catch_exceptions_ftype *func,
-                          void *func_args,
-                          char *errstring,
-                          char **gdberrmsg,
-                          return_mask mask)
-{
-  int val;
-  enum return_reason caught;
-  catcher (func, uiout, func_args, &val, &caught, errstring, gdberrmsg, mask);
-  gdb_assert (val >= 0);
-  gdb_assert (caught <= 0);
-  if (caught < 0)
-    return caught;
-  return val;
-}
-
-struct catch_errors_args
-{
-  catch_errors_ftype *func;
-  void *func_args;
-};
-
-static int
-do_catch_errors (struct ui_out *uiout, void *data)
-{
-  struct catch_errors_args *args = data;
-  return args->func (args->func_args);
-}
-
-int
-catch_errors (catch_errors_ftype *func, void *func_args, char *errstring,
-             return_mask mask)
-{
-  int val;
-  enum return_reason caught;
-  struct catch_errors_args args;
-  args.func = func;
-  args.func_args = func_args;
-  catcher (do_catch_errors, uiout, &args, &val, &caught, errstring, 
-          NULL, mask);
-  if (caught != 0)
-    return 0;
-  return val;
-}
-
-struct captured_command_args
-  {
-    catch_command_errors_ftype *command;
-    char *arg;
-    int from_tty;
-  };
-
-static int
-do_captured_command (void *data)
-{
-  struct captured_command_args *context = data;
-  context->command (context->arg, context->from_tty);
-  /* FIXME: cagney/1999-11-07: Technically this do_cleanups() call
-     isn't needed.  Instead an assertion check could be made that
-     simply confirmed that the called function correctly cleaned up
-     after itself.  Unfortunately, old code (prior to 1999-11-04) in
-     main.c was calling SET_TOP_LEVEL(), calling the command function,
-     and then *always* calling do_cleanups().  For the moment we
-     remain ``bug compatible'' with that old code..  */
-  do_cleanups (ALL_CLEANUPS);
-  return 1;
-}
-
-int
-catch_command_errors (catch_command_errors_ftype * command,
-                     char *arg, int from_tty, return_mask mask)
-{
-  struct captured_command_args args;
-  args.command = command;
-  args.arg = arg;
-  args.from_tty = from_tty;
-  return catch_errors (do_captured_command, &args, "", mask);
-}
-
+void (*deprecated_error_hook) (void);
 
 /* Handler for SIGHUP.  */
 
 #ifdef SIGHUP
-/* Just a little helper function for disconnect().  */
-
 /* NOTE 1999-04-29: This function will be static again, once we modify
    gdb to use the event loop as the default command loop and we merge
    event-top.c into this file, top.c */
@@ -591,15 +305,6 @@ quit_cover (void *s)
   quit_command ((char *) 0, 0);
   return 0;
 }
-
-static void
-disconnect (int signo)
-{
-  catch_errors (quit_cover, NULL,
-             "Could not kill the program being debugged", RETURN_MASK_ALL);
-  signal (SIGHUP, SIG_DFL);
-  kill (getpid (), SIGHUP);
-}
 #endif /* defined SIGHUP */
 \f
 /* Line number we are currently in in a file which is being sourced.  */
@@ -614,21 +319,6 @@ disconnect (int signo)
    event-top.c into this file, top.c */
 /* static */ char *source_file_name;
 
-/* Buffer containing the error_pre_print used by the source stuff.
-   Malloc'd.  */
-/* NOTE 1999-04-29: This variable will be static again, once we modify
-   gdb to use the event loop as the default command loop and we merge
-   event-top.c into this file, top.c */
-/* static */ char *source_error;
-static int source_error_allocated;
-
-/* Something to glom on to the start of error_pre_print if source_file_name
-   is set.  */
-/* NOTE 1999-04-29: This variable will be static again, once we modify
-   gdb to use the event loop as the default command loop and we merge
-   event-top.c into this file, top.c */
-/* static */ char *source_pre_error;
-
 /* Clean up on error during a "source" command (or execution of a
    user-defined command).  */
 
@@ -696,7 +386,7 @@ execute_command (char *p, int from_tty)
 
       /* If the target is running, we allow only a limited set of
          commands. */
-      if (event_loop_p && target_can_async_p () && target_executing)
+      if (target_can_async_p () && target_executing)
        if (strcmp (c->name, "help") != 0
            && strcmp (c->name, "pwd") != 0
            && strcmp (c->name, "show") != 0
@@ -943,15 +633,11 @@ gdb_readline (char *prompt_arg)
        }
 
       if (c == '\n')
-#ifndef CRLF_SOURCE_FILES
-       break;
-#else
        {
          if (input_index > 0 && result[input_index - 1] == '\r')
            input_index--;
          break;
        }
-#endif
 
       result[input_index++] = c;
       while (input_index >= result_size)
@@ -991,7 +677,7 @@ char *
 gdb_readline_wrapper (char *prompt)
 {
   /* Set the hook that works in this case.  */
-  if (event_loop_p && after_char_processing_hook)
+  if (after_char_processing_hook)
     {
       rl_pre_input_hook = (Function *) after_char_processing_hook;
       after_char_processing_hook = NULL;
@@ -1052,37 +738,6 @@ do_nothing (int signo)
   signal (signo, do_nothing);
 }
 
-static void
-init_signals (void)
-{
-  signal (SIGINT, request_quit);
-
-  /* If SIGTRAP was set to SIG_IGN, then the SIG_IGN will get passed
-     to the inferior and breakpoints will be ignored.  */
-#ifdef SIGTRAP
-  signal (SIGTRAP, SIG_DFL);
-#endif
-
-  /* If we initialize SIGQUIT to SIG_IGN, then the SIG_IGN will get
-     passed to the inferior, which we don't want.  It would be
-     possible to do a "signal (SIGQUIT, SIG_DFL)" after we fork, but
-     on BSD4.3 systems using vfork, that can affect the
-     GDB process as well as the inferior (the signal handling tables
-     might be in memory, shared between the two).  Since we establish
-     a handler for SIGQUIT, when we call exec it will set the signal
-     to SIG_DFL for us.  */
-  signal (SIGQUIT, do_nothing);
-#ifdef SIGHUP
-  if (signal (SIGHUP, do_nothing) != SIG_IGN)
-    signal (SIGHUP, disconnect);
-#endif
-  signal (SIGFPE, float_handler);
-
-#if defined(SIGWINCH) && defined(SIGWINCH_HANDLER)
-  signal (SIGWINCH, SIGWINCH_HANDLER);
-#endif
-}
-\f
 /* The current saved history number from operate-and-get-next.
    This is -1 if not valid.  */
 static int operate_saved_history = -1;
@@ -1114,17 +769,8 @@ gdb_rl_operate_and_get_next (int count, int key)
 {
   int where;
 
-  if (event_loop_p)
-    {
-      /* Use the async hook.  */
-      after_char_processing_hook = gdb_rl_operate_and_get_next_completion;
-    }
-  else
-    {
-      /* This hook only works correctly when we are using the
-        synchronous readline.  */
-      rl_pre_input_hook = (Function *) gdb_rl_operate_and_get_next_completion;
-    }
+  /* Use the async hook.  */
+  after_char_processing_hook = gdb_rl_operate_and_get_next_completion;
 
   /* Find the current line, and find the next line to use.  */
   where = where_history();
@@ -1200,12 +846,7 @@ command_line_input (char *prompt_arg, int repeat, char *annotation_suffix)
   immediate_quit++;
 #ifdef STOP_SIGNAL
   if (job_control)
-    {
-      if (event_loop_p)
-       signal (STOP_SIGNAL, handle_stop_sig);
-      else
-       signal (STOP_SIGNAL, stop_sig);
-    }
+    signal (STOP_SIGNAL, handle_stop_sig);
 #endif
 
   while (1)
@@ -1217,15 +858,7 @@ command_line_input (char *prompt_arg, int repeat, char *annotation_suffix)
       gdb_flush (gdb_stderr);
 
       if (source_file_name != NULL)
-       {
-         ++source_line_number;
-         sprintf (source_error,
-                  "%s%s:%d: Error in sourced command file:\n",
-                  source_pre_error,
-                  source_file_name,
-                  source_line_number);
-         error_pre_print = source_error;
-       }
+       ++source_line_number;
 
       if (annotation_level > 1 && instream == stdin)
        {
@@ -1419,10 +1052,7 @@ There is absolutely no warranty for GDB.  Type \"show warranty\" for details.\n"
 char *
 get_prompt (void)
 {
-  if (event_loop_p)
-    return PROMPT (0);
-  else
-    return gdb_prompt_string;
+  return PROMPT (0);
 }
 
 void
@@ -1433,10 +1063,7 @@ set_prompt (char *s)
    if (prompt != NULL)
    xfree (prompt);
  */
-  if (event_loop_p)
-    PROMPT (0) = savestring (s, strlen (s));
-  else
-    gdb_prompt_string = savestring (s, strlen (s));
+  PROMPT (0) = savestring (s, strlen (s));
 }
 \f
 
@@ -1713,32 +1340,23 @@ init_main (void)
 {
   struct cmd_list_element *c;
 
-  /* If we are running the asynchronous version,
-     we initialize the prompts differently. */
-  if (!event_loop_p)
-    {
-      gdb_prompt_string = savestring (DEFAULT_PROMPT, strlen (DEFAULT_PROMPT));
-    }
-  else
-    {
-      /* initialize the prompt stack to a simple "(gdb) " prompt or to
-         whatever the DEFAULT_PROMPT is. */
-      the_prompts.top = 0;
-      PREFIX (0) = "";
-      PROMPT (0) = savestring (DEFAULT_PROMPT, strlen (DEFAULT_PROMPT));
-      SUFFIX (0) = "";
-      /* Set things up for annotation_level > 1, if the user ever decides
-         to use it. */
-      async_annotation_suffix = "prompt";
-      /* Set the variable associated with the setshow prompt command. */
-      new_async_prompt = savestring (PROMPT (0), strlen (PROMPT (0)));
-
-      /* If gdb was started with --annotate=2, this is equivalent to
-        the user entering the command 'set annotate 2' at the gdb
-        prompt, so we need to do extra processing. */
-      if (annotation_level > 1)
-        set_async_annotation_level (NULL, 0, NULL);
-    }
+  /* initialize the prompt stack to a simple "(gdb) " prompt or to
+     whatever the DEFAULT_PROMPT is.  */
+  the_prompts.top = 0;
+  PREFIX (0) = "";
+  PROMPT (0) = savestring (DEFAULT_PROMPT, strlen (DEFAULT_PROMPT));
+  SUFFIX (0) = "";
+  /* Set things up for annotation_level > 1, if the user ever decides
+     to use it.  */
+  async_annotation_suffix = "prompt";
+  /* Set the variable associated with the setshow prompt command.  */
+  new_async_prompt = savestring (PROMPT (0), strlen (PROMPT (0)));
+
+  /* If gdb was started with --annotate=2, this is equivalent to the
+     user entering the command 'set annotate 2' at the gdb prompt, so
+     we need to do extra processing.  */
+  if (annotation_level > 1)
+    set_async_annotation_level (NULL, 0, NULL);
 
   /* Set the important stuff up for command editing.  */
   command_editing_p = 1;
@@ -1756,57 +1374,26 @@ init_main (void)
      15 is Control-o, the same binding this function has in Bash.  */
   rl_add_defun ("operate-and-get-next", gdb_rl_operate_and_get_next, 15);
 
-  /* The set prompt command is different depending whether or not the
-     async version is run. NOTE: this difference is going to
-     disappear as we make the event loop be the default engine of
-     gdb. */
-  if (!event_loop_p)
-    {
-      add_show_from_set
-       (add_set_cmd ("prompt", class_support, var_string,
-                     (char *) &gdb_prompt_string, "Set gdb's prompt",
-                     &setlist),
-        &showlist);
-    }
-  else
-    {
-      c = add_set_cmd ("prompt", class_support, var_string,
-                      (char *) &new_async_prompt, "Set gdb's prompt",
-                      &setlist);
-      add_show_from_set (c, &showlist);
-      set_cmd_sfunc (c, set_async_prompt);
-    }
+  c = add_set_cmd ("prompt", class_support, var_string,
+                  (char *) &new_async_prompt, "Set gdb's prompt",
+                  &setlist);
+  deprecated_add_show_from_set (c, &showlist);
+  set_cmd_sfunc (c, set_async_prompt);
 
   add_com ("dont-repeat", class_support, dont_repeat_command, "Don't repeat this command.\n\
 Primarily used inside of user-defined commands that should not be repeated when\n\
 hitting return.");
 
-  /* The set editing command is different depending whether or not the
-     async version is run. NOTE: this difference is going to disappear
-     as we make the event loop be the default engine of gdb. */
-  if (!event_loop_p)
-    {
-      add_show_from_set
-       (add_set_cmd ("editing", class_support, var_boolean, (char *) &command_editing_p,
-                     "Set editing of command lines as they are typed.\n\
-Use \"on\" to enable the editing, and \"off\" to disable it.\n\
-Without an argument, command line editing is enabled.  To edit, use\n\
-EMACS-like or VI-like commands like control-P or ESC.", &setlist),
-        &showlist);
-    }
-  else
-    {
-      c = add_set_cmd ("editing", class_support, var_boolean, (char *) &async_command_editing_p,
-                      "Set editing of command lines as they are typed.\n\
+  c = add_set_cmd ("editing", class_support, var_boolean, (char *) &async_command_editing_p,
+                  "Set editing of command lines as they are typed.\n\
 Use \"on\" to enable the editing, and \"off\" to disable it.\n\
 Without an argument, command line editing is enabled.  To edit, use\n\
 EMACS-like or VI-like commands like control-P or ESC.", &setlist);
 
-      add_show_from_set (c, &showlist);
-      set_cmd_sfunc (c, set_async_editing_command);
-    }
+  deprecated_add_show_from_set (c, &showlist);
+  set_cmd_sfunc (c, set_async_editing_command);
 
-  add_show_from_set
+  deprecated_add_show_from_set
     (add_set_cmd ("save", no_class, var_boolean, (char *) &write_history_p,
                  "Set saving of the history record on exit.\n\
 Use \"on\" to enable the saving, and \"off\" to disable it.\n\
@@ -1816,7 +1403,7 @@ Without an argument, saving is enabled.", &sethistlist),
   c = add_set_cmd ("size", no_class, var_integer, (char *) &history_size,
                   "Set the size of the command history,\n\
 ie. the number of previous commands to keep a record of.", &sethistlist);
-  add_show_from_set (c, &showhistlist);
+  deprecated_add_show_from_set (c, &showhistlist);
   set_cmd_sfunc (c, set_history_size_command);
 
   c = add_set_cmd ("filename", no_class, var_filename,
@@ -1824,46 +1411,28 @@ ie. the number of previous commands to keep a record of.", &sethistlist);
                   "Set the filename in which to record the command history\n\
 (the list of previous commands of which a record is kept).", &sethistlist);
   set_cmd_completer (c, filename_completer);
-  add_show_from_set (c, &showhistlist);
+  deprecated_add_show_from_set (c, &showhistlist);
 
-  add_show_from_set
+  deprecated_add_show_from_set
     (add_set_cmd ("confirm", class_support, var_boolean,
                  (char *) &caution,
                  "Set whether to confirm potentially dangerous operations.",
                  &setlist),
      &showlist);
 
-  /* The set annotate command is different depending whether or not
-     the async version is run. NOTE: this difference is going to
-     disappear as we make the event loop be the default engine of
-     gdb. */
-  if (!event_loop_p)
-    {
-      c = add_set_cmd ("annotate", class_obscure, var_zinteger,
-                      (char *) &annotation_level, "Set annotation_level.\n\
-0 == normal;     1 == fullname (for use when running under emacs)\n\
-2 == output annotated suitably for use by programs that control GDB.",
-                      &setlist);
-      c = add_show_from_set (c, &showlist);
-    }
-  else
-    {
-      c = add_set_cmd ("annotate", class_obscure, var_zinteger,
-                      (char *) &annotation_level, "Set annotation_level.\n\
+  c = add_set_cmd ("annotate", class_obscure, var_zinteger,
+                  (char *) &annotation_level, "Set annotation_level.\n\
 0 == normal;     1 == fullname (for use when running under emacs)\n\
 2 == output annotated suitably for use by programs that control GDB.",
-                      &setlist);
-      add_show_from_set (c, &showlist);
-      set_cmd_sfunc (c, set_async_annotation_level);
-    }
-  if (event_loop_p)
-    {
-      add_show_from_set
-       (add_set_cmd ("exec-done-display", class_support, var_boolean, (char *) &exec_done_display_p,
-                     "Set notification of completion for asynchronous execution commands.\n\
+                  &setlist);
+  deprecated_add_show_from_set (c, &showlist);
+  set_cmd_sfunc (c, set_async_annotation_level);
+
+  deprecated_add_show_from_set
+    (add_set_cmd ("exec-done-display", class_support, var_boolean, (char *) &exec_done_display_p,
+                 "Set notification of completion for asynchronous execution commands.\n\
 Use \"on\" to enable the notification, and \"off\" to disable it.", &setlist),
-        &showlist);
-    }
+     &showlist);
 }
 
 void
@@ -1891,14 +1460,7 @@ gdb_init (char *argv0)
   init_cli_cmds();
   init_main ();                        /* But that omits this file!  Do it now */
 
-  /* The signal handling mechanism is different depending whether or
-     not the async version is run. NOTE: in the future we plan to make
-     the event loop be the default engine of gdb, and this difference
-     will disappear. */
-  if (event_loop_p)
-    async_init_signals ();
-  else
-    init_signals ();
+  async_init_signals ();
 
   /* We need a default language for parsing expressions, so simple things like
      "set width 0" won't fail if no language is explicitly set in a config file
This page took 0.030722 seconds and 4 git commands to generate.