/* Top level stuff for GDB, the GNU debugger.
- Copyright (C) 1986-2018 Free Software Foundation, Inc.
+ Copyright (C) 1986-2019 Free Software Foundation, Inc.
This file is part of GDB.
#include "maint.h"
#include "filenames.h"
-#include "filestuff.h"
+#include "common/filestuff.h"
#include <signal.h>
#include "event-top.h"
#include "infrun.h"
-#include "signals-state-save-restore.h"
+#include "common/signals-state-save-restore.h"
#include <vector>
#include "common/pathstuff.h"
+#include "cli/cli-style.h"
/* The selected interpreter. This will be used as a set command
variable, so it should always be malloc'ed - since
int i;
int save_auto_load;
- struct objfile *objfile;
int ret = 1;
#ifdef HAVE_USEFUL_SBRK
textdomain (PACKAGE);
#endif
- bfd_init ();
notice_open_fds ();
saved_command_line = (char *) xstrdup ("");
setvbuf (stderr, NULL, _IONBF, BUFSIZ);
#endif
+ /* Note: `error' cannot be called before this point, because the
+ caller will crash when trying to print the exception. */
main_ui = new ui (stdin, stdout, stderr);
current_ui = main_ui;
gdb_stdtargerr = gdb_stderr; /* for moment */
gdb_stdtargin = gdb_stdin; /* for moment */
+ if (bfd_init () != BFD_INIT_MAGIC)
+ error (_("fatal error: libbfd ABI mismatch"));
+
#ifdef __MINGW32__
/* On Windows, argv[0] is not necessarily set to absolute form when
GDB is found along PATH, without which relocation doesn't work. */
break;
case 'b':
{
- int i;
+ int rate;
char *p;
- i = strtol (optarg, &p, 0);
- if (i == 0 && p == optarg)
+ rate = strtol (optarg, &p, 0);
+ if (rate == 0 && p == optarg)
warning (_("could not set baud rate to `%s'."),
optarg);
else
- baud_rate = i;
+ baud_rate = rate;
}
break;
case 'l':
{
- int i;
+ int timeout;
char *p;
- i = strtol (optarg, &p, 0);
- if (i == 0 && p == optarg)
+ timeout = strtol (optarg, &p, 0);
+ if (timeout == 0 && p == optarg)
warning (_("could not set timeout limit to `%s'."),
optarg);
else
- remote_timeout = i;
+ remote_timeout = timeout;
}
break;
}
if (batch_flag)
- quiet = 1;
+ {
+ quiet = 1;
+
+ /* Disable all output styling when running in batch mode. */
+ cli_styling = 0;
+ }
}
save_original_signals_state (quiet);
We wait until now because it is common to add to the source search
path in local_gdbinit. */
global_auto_load = save_auto_load;
- ALL_OBJFILES (objfile)
+ for (objfile *objfile : current_program_space->objfiles ())
load_auto_scripts_for_objfile (objfile);
/* Process '-x' and '-ex' options. */