diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/bfd/version.h ./bfd/version.h
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/bfd/version.h	2017-12-30 01:48:57.000000000 +0000
+++ ./bfd/version.h	2017-12-31 01:49:01.000000000 +0000
@@ -16,7 +16,7 @@
 
    In releases, the date is not included in either version strings or
    sonames.  */
-#define BFD_VERSION_DATE 20171230
+#define BFD_VERSION_DATE 20171231
 #define BFD_VERSION @bfd_version@
 #define BFD_VERSION_STRING  @bfd_version_package@ @bfd_version_string@
 #define REPORT_BUGS_TO @report_bugs_to@
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/djunpack.bat ./djunpack.bat
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/djunpack.bat	2017-12-30 01:52:40.000000000 +0000
+++ ./djunpack.bat	2017-12-31 01:53:19.000000000 +0000
@@ -17,8 +17,8 @@ Rem
 Rem The following 2 lines need to be changed with each new GDB release, to
 Rem be identical to the name of the top-level directory where the GDB
 Rem distribution unpacks itself.
-set GDBVER=$package-8.0.50.20171230
-if "%GDBVER%"=="$package-8.0.50.20171230" GoTo EnvOk
+set GDBVER=$package-8.0.50.20171231
+if "%GDBVER%"=="$package-8.0.50.20171231" GoTo EnvOk
 Rem If their environment space is too small, re-exec with a larger one
 command.com /e:4096 /c %0 %1
 GoTo End
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/ada-lang.c ./gdb/ada-lang.c
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/ada-lang.c	2017-12-30 01:48:58.000000000 +0000
+++ ./gdb/ada-lang.c	2017-12-31 01:49:03.000000000 +0000
@@ -124,10 +124,10 @@ static int num_defns_collected (struct o
 
 static struct block_symbol *defns_collected (struct obstack *, int);
 
-static struct value *resolve_subexp (struct expression **, int *, int,
+static struct value *resolve_subexp (expression_up *, int *, int,
                                      struct type *);
 
-static void replace_operator_with_call (struct expression **, int, int, int,
+static void replace_operator_with_call (expression_up *, int, int, int,
                                         struct symbol *, const struct block *);
 
 static int possible_user_operator_p (enum exp_opcode, struct value **);
@@ -3235,7 +3235,7 @@ ada_decoded_op_name (enum exp_opcode op)
    return type is preferred.  May change (expand) *EXP.  */
 
 static void
-resolve (struct expression **expp, int void_context_p)
+resolve (expression_up *expp, int void_context_p)
 {
   struct type *context_type = NULL;
   int pc = 0;
@@ -3256,7 +3256,7 @@ resolve (struct expression **expp, int v
    are as in ada_resolve, above.  */
 
 static struct value *
-resolve_subexp (struct expression **expp, int *pos, int deprocedure_p,
+resolve_subexp (expression_up *expp, int *pos, int deprocedure_p,
                 struct type *context_type)
 {
   int pc = *pos;
@@ -3270,7 +3270,7 @@ resolve_subexp (struct expression **expp
 
   argvec = NULL;
   nargs = 0;
-  exp = *expp;
+  exp = expp->get ();
 
   /* Pass one: resolve operands, saving their types and updating *pos,
      if needed.  */
@@ -3420,7 +3420,7 @@ resolve_subexp (struct expression **expp
   for (i = 0; i < nargs; i += 1)
     argvec[i] = resolve_subexp (expp, pos, 1, NULL);
   argvec[i] = NULL;
-  exp = *expp;
+  exp = expp->get ();
 
   /* Pass two: perform any resolution on principal operator.  */
   switch (op)
@@ -3515,7 +3515,7 @@ resolve_subexp (struct expression **expp
           replace_operator_with_call (expp, pc, 0, 0,
                                       exp->elts[pc + 2].symbol,
                                       exp->elts[pc + 1].block);
-          exp = *expp;
+          exp = expp->get ();
         }
       break;
 
@@ -3596,7 +3596,7 @@ resolve_subexp (struct expression **expp
 	  replace_operator_with_call (expp, pc, nargs, 1,
 				      candidates[i].symbol,
 				      candidates[i].block);
-          exp = *expp;
+          exp = expp->get ();
         }
       break;
 
@@ -4115,7 +4115,7 @@ get_selections (int *choices, int n_choi
    arguments.  Update *EXPP as needed to hold more space.  */
 
 static void
-replace_operator_with_call (struct expression **expp, int pc, int nargs,
+replace_operator_with_call (expression_up *expp, int pc, int nargs,
                             int oplen, struct symbol *sym,
                             const struct block *block)
 {
@@ -4124,7 +4124,7 @@ replace_operator_with_call (struct expre
   struct expression *newexp = (struct expression *)
     xzalloc (sizeof (struct expression)
              + EXP_ELEM_TO_BYTES ((*expp)->nelts + 7 - oplen));
-  struct expression *exp = *expp;
+  struct expression *exp = expp->get ();
 
   newexp->nelts = exp->nelts + 7 - oplen;
   newexp->language_defn = exp->language_defn;
@@ -4140,8 +4140,7 @@ replace_operator_with_call (struct expre
   newexp->elts[pc + 4].block = block;
   newexp->elts[pc + 5].symbol = sym;
 
-  *expp = newexp;
-  xfree (exp);
+  expp->reset (newexp);
 }
 
 /* Type-class predicates */
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/amd64-linux-tdep.c ./gdb/amd64-linux-tdep.c
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/amd64-linux-tdep.c	2017-12-30 01:48:58.000000000 +0000
+++ ./gdb/amd64-linux-tdep.c	2017-12-31 01:49:03.000000000 +0000
@@ -363,6 +363,9 @@ amd64_all_but_ip_registers_record (struc
 static enum gdb_syscall
 amd64_canonicalize_syscall (enum amd64_syscall syscall_number)
 {
+  DIAGNOSTIC_PUSH
+  DIAGNOSTIC_IGNORE_SWITCH_DIFFERENT_ENUM_TYPES
+
   switch (syscall_number) {
   case amd64_sys_read:
   case amd64_x32_sys_read:
@@ -1430,6 +1433,8 @@ amd64_canonicalize_syscall (enum amd64_s
   default:
     return gdb_sys_no_syscall;
   }
+
+  DIAGNOSTIC_POP
 }
 
 /* Parse the arguments of current system call instruction and record
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/ChangeLog ./gdb/ChangeLog
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/ChangeLog	2017-12-30 01:48:58.000000000 +0000
+++ ./gdb/ChangeLog	2017-12-31 01:49:02.000000000 +0000
@@ -1,3 +1,43 @@
+2017-12-30  Tom Tromey  <tom@tromey.com>
+	    Simon Marchi  <simon.marchi@ericsson.com>
+
+	* stap-probe.h (struct stap_parse_info): Add constructor,
+	destructor.
+	* stap-probe.c (stap_parse_argument): Update.
+	* rust-exp.y (rust_lex_tests): Update.
+	* parser-defs.h (struct parser_state): Add constructor,
+	destructor, release method.
+	<expout>: Change type to expression_up.
+	(null_post_parser): Change type.
+	(initialize_expout, reallocate_expout): Remove.
+	* parse.c (parser_state::parser_state): Rename from
+	initialize_expout.
+	(parser_state::release): Rename from reallocate_expout.
+	(write_exp_elt, parse_exp_in_context_1, increase_expout_size):
+	Update.
+	(null_post_parser): Change type of "exp".
+	* dtrace-probe.c (dtrace_probe::build_arg_exprs): Update.
+	* ada-lang.c (resolve, resolve_subexp)
+	(replace_operator_with_call): Change type of "expp".
+	* language.h (struct language_defn) <la_post_parser>: Change type
+	of "expp".
+
+2017-12-30  Simon Marchi  <simon.marchi@ericsson.com>
+
+	* dwarf2read.c (struct mapped_debug_names): Make final.
+	(struct mapped_index): Make final.
+
+2017-12-29  Simon Marchi  <simon.marchi@ericsson.com>
+
+	* common/diagnostics.h
+	(DIAGNOSTIC_IGNORE_SWITCH_DIFFERENT_ENUM_TYPES): New macro.
+	* amd64-linux-tdep.c (amd64_canonicalize_syscall): Use it.
+
+2017-12-29  Simon Marchi  <simon.marchi@ericsson.com>
+
+	* linux-thread-db.c (thread_db_detach): Remove call to
+	delete_thread_db_info.
+
 2017-12-28  Simon Marchi  <simon.marchi@polymtl.ca>
 
 	* target.h (enum target_object) <TARGET_OBJECT_HPUX_UREGS,
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/common/diagnostics.h ./gdb/common/diagnostics.h
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/common/diagnostics.h	2017-12-30 01:48:58.000000000 +0000
+++ ./gdb/common/diagnostics.h	2017-12-31 01:49:03.000000000 +0000
@@ -38,6 +38,8 @@
   DIAGNOSTIC_IGNORE ("-Wdeprecated-register")
 # define DIAGNOSTIC_IGNORE_UNUSED_FUNCTION \
   DIAGNOSTIC_IGNORE ("-Wunused-function")
+# define DIAGNOSTIC_IGNORE_SWITCH_DIFFERENT_ENUM_TYPES \
+  DIAGNOSTIC_IGNORE ("-Wenum-compare-switch")
 
 #elif defined (__GNUC__) /* GCC */
 
@@ -45,12 +47,15 @@
 # define DIAGNOSTIC_IGNORE_DEPRECATED_REGISTER
 # define DIAGNOSTIC_IGNORE_UNUSED_FUNCTION \
   DIAGNOSTIC_IGNORE ("-Wunused-function")
+# define DIAGNOSTIC_IGNORE_SWITCH_DIFFERENT_ENUM_TYPES
 
 #else /* Other compilers */
 
 # define DIAGNOSTIC_IGNORE_SELF_MOVE
 # define DIAGNOSTIC_IGNORE_DEPRECATED_REGISTER
 # define DIAGNOSTIC_IGNORE_UNUSED_FUNCTION
+# define DIAGNOSTIC_IGNORE_SWITCH_DIFFERENT_ENUM_TYPES
+
 #endif
 
 #endif /* COMMON_DIAGNOSTICS_H */
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gcore.1 ./gdb/doc/gcore.1
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gcore.1	2017-12-30 01:52:35.000000000 +0000
+++ ./gdb/doc/gcore.1	2017-12-31 01:53:14.000000000 +0000
@@ -124,7 +124,7 @@
 .\" ========================================================================
 .\"
 .IX Title "GCORE 1"
-.TH GCORE 1 "2017-12-30" "gdb-8.0.50.20171230-git" "GNU Development Tools"
+.TH GCORE 1 "2017-12-31" "gdb-8.0.50.20171231-git" "GNU Development Tools"
 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
 .\" way too many mistakes in technical documents.
 .if n .ad l
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdb.1 ./gdb/doc/gdb.1
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdb.1	2017-12-30 01:52:34.000000000 +0000
+++ ./gdb/doc/gdb.1	2017-12-31 01:53:13.000000000 +0000
@@ -124,7 +124,7 @@
 .\" ========================================================================
 .\"
 .IX Title "GDB 1"
-.TH GDB 1 "2017-12-30" "gdb-8.0.50.20171230-git" "GNU Development Tools"
+.TH GDB 1 "2017-12-31" "gdb-8.0.50.20171231-git" "GNU Development Tools"
 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
 .\" way too many mistakes in technical documents.
 .if n .ad l
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdb.info ./gdb/doc/gdb.info
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdb.info	2017-12-30 01:52:32.000000000 +0000
+++ ./gdb/doc/gdb.info	2017-12-31 01:53:10.000000000 +0000
@@ -21,7 +21,7 @@ END-INFO-DIR-ENTRY
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of 'Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 8.0.50.20171230-git.
+Source-Level Debugger' for GDB (GDB) Version 8.0.50.20171231-git.
 
    Copyright (C) 1988-2017 Free Software Foundation, Inc.
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdb.info-1 ./gdb/doc/gdb.info-1
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdb.info-1	2017-12-30 01:52:20.000000000 +0000
+++ ./gdb/doc/gdb.info-1	2017-12-31 01:52:59.000000000 +0000
@@ -21,7 +21,7 @@ END-INFO-DIR-ENTRY
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of 'Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 8.0.50.20171230-git.
+Source-Level Debugger' for GDB (GDB) Version 8.0.50.20171231-git.
 
    Copyright (C) 1988-2017 Free Software Foundation, Inc.
 
@@ -44,7 +44,7 @@ Debugging with GDB
 
 This file describes GDB, the GNU symbolic debugger.
 
-   This is the Tenth Edition, for GDB (GDB) Version 8.0.50.20171230-git.
+   This is the Tenth Edition, for GDB (GDB) Version 8.0.50.20171231-git.
 
    Copyright (C) 1988-2017 Free Software Foundation, Inc.
 
@@ -501,7 +501,7 @@ Let us use GDB to try to see what is goi
      There is absolutely no warranty for GDB; type "show warranty"
       for details.
 
-     GDB 8.0.50.20171230-git, Copyright 1999 Free Software Foundation, Inc...
+     GDB 8.0.50.20171231-git, Copyright 1999 Free Software Foundation, Inc...
      (gdb)
 
 GDB reads only enough symbol data to know where to find the rest when
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdb.info-2 ./gdb/doc/gdb.info-2
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdb.info-2	2017-12-30 01:52:21.000000000 +0000
+++ ./gdb/doc/gdb.info-2	2017-12-31 01:53:00.000000000 +0000
@@ -21,7 +21,7 @@ END-INFO-DIR-ENTRY
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of 'Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 8.0.50.20171230-git.
+Source-Level Debugger' for GDB (GDB) Version 8.0.50.20171231-git.
 
    Copyright (C) 1988-2017 Free Software Foundation, Inc.
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdb.info-3 ./gdb/doc/gdb.info-3
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdb.info-3	2017-12-30 01:52:23.000000000 +0000
+++ ./gdb/doc/gdb.info-3	2017-12-31 01:53:02.000000000 +0000
@@ -21,7 +21,7 @@ END-INFO-DIR-ENTRY
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of 'Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 8.0.50.20171230-git.
+Source-Level Debugger' for GDB (GDB) Version 8.0.50.20171231-git.
 
    Copyright (C) 1988-2017 Free Software Foundation, Inc.
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdb.info-4 ./gdb/doc/gdb.info-4
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdb.info-4	2017-12-30 01:52:26.000000000 +0000
+++ ./gdb/doc/gdb.info-4	2017-12-31 01:53:05.000000000 +0000
@@ -21,7 +21,7 @@ END-INFO-DIR-ENTRY
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of 'Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 8.0.50.20171230-git.
+Source-Level Debugger' for GDB (GDB) Version 8.0.50.20171231-git.
 
    Copyright (C) 1988-2017 Free Software Foundation, Inc.
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdb.info-5 ./gdb/doc/gdb.info-5
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdb.info-5	2017-12-30 01:52:28.000000000 +0000
+++ ./gdb/doc/gdb.info-5	2017-12-31 01:53:06.000000000 +0000
@@ -21,7 +21,7 @@ END-INFO-DIR-ENTRY
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of 'Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 8.0.50.20171230-git.
+Source-Level Debugger' for GDB (GDB) Version 8.0.50.20171231-git.
 
    Copyright (C) 1988-2017 Free Software Foundation, Inc.
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdb.info-6 ./gdb/doc/gdb.info-6
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdb.info-6	2017-12-30 01:52:30.000000000 +0000
+++ ./gdb/doc/gdb.info-6	2017-12-31 01:53:09.000000000 +0000
@@ -21,7 +21,7 @@ END-INFO-DIR-ENTRY
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of 'Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 8.0.50.20171230-git.
+Source-Level Debugger' for GDB (GDB) Version 8.0.50.20171231-git.
 
    Copyright (C) 1988-2017 Free Software Foundation, Inc.
 
@@ -1475,7 +1475,7 @@ and TeX (or 'texi2roff') to typeset the 
 
    GDB includes an already formatted copy of the on-line Info version of
 this manual in the 'gdb' subdirectory.  The main Info file is
-'gdb-8.0.50.20171230-git/gdb/gdb.info', and it refers to subordinate
+'gdb-8.0.50.20171231-git/gdb/gdb.info', and it refers to subordinate
 files matching 'gdb.info*' in the same directory.  If necessary, you can
 print out these files, or read them with any editor; but they are easier
 to read using the 'info' subsystem in GNU Emacs or the standalone 'info'
@@ -1485,8 +1485,8 @@ program, available as part of the GNU Te
 Info formatting programs, such as 'texinfo-format-buffer' or 'makeinfo'.
 
    If you have 'makeinfo' installed, and are in the top level GDB source
-directory ('gdb-8.0.50.20171230-git', in the case of version
-8.0.50.20171230-git), you can make the Info file by typing:
+directory ('gdb-8.0.50.20171231-git', in the case of version
+8.0.50.20171231-git), you can make the Info file by typing:
 
      cd gdb
      make gdb.info
@@ -1511,7 +1511,7 @@ On its own, TeX cannot either read or ty
 
    If you have TeX and a DVI printer program installed, you can typeset
 and print this manual.  First switch to the 'gdb' subdirectory of the
-main source directory (for example, to 'gdb-8.0.50.20171230-git/gdb')
+main source directory (for example, to 'gdb-8.0.50.20171231-git/gdb')
 and type:
 
      make gdb.dvi
@@ -1520,8 +1520,8 @@ and type:
 
    ---------- Footnotes ----------
 
-   (1) In 'gdb-8.0.50.20171230-git/gdb/refcard.ps' of the version
-8.0.50.20171230-git release.
+   (1) In 'gdb-8.0.50.20171231-git/gdb/refcard.ps' of the version
+8.0.50.20171231-git release.
 
 
 File: gdb.info,  Node: Installing GDB,  Next: Maintenance Commands,  Prev: Formatting Documentation,  Up: Top
@@ -1639,39 +1639,39 @@ preparing GDB for installation; you can 
 a single directory, whose name is usually composed by appending the
 version number to 'gdb'.
 
-   For example, the GDB version 8.0.50.20171230-git distribution is in
-the 'gdb-8.0.50.20171230-git' directory.  That directory contains:
+   For example, the GDB version 8.0.50.20171231-git distribution is in
+the 'gdb-8.0.50.20171231-git' directory.  That directory contains:
 
-'gdb-8.0.50.20171230-git/configure (and supporting files)'
+'gdb-8.0.50.20171231-git/configure (and supporting files)'
      script for configuring GDB and all its supporting libraries
 
-'gdb-8.0.50.20171230-git/gdb'
+'gdb-8.0.50.20171231-git/gdb'
      the source specific to GDB itself
 
-'gdb-8.0.50.20171230-git/bfd'
+'gdb-8.0.50.20171231-git/bfd'
      source for the Binary File Descriptor library
 
-'gdb-8.0.50.20171230-git/include'
+'gdb-8.0.50.20171231-git/include'
      GNU include files
 
-'gdb-8.0.50.20171230-git/libiberty'
+'gdb-8.0.50.20171231-git/libiberty'
      source for the '-liberty' free software library
 
-'gdb-8.0.50.20171230-git/opcodes'
+'gdb-8.0.50.20171231-git/opcodes'
      source for the library of opcode tables and disassemblers
 
-'gdb-8.0.50.20171230-git/readline'
+'gdb-8.0.50.20171231-git/readline'
      source for the GNU command-line interface
 
-'gdb-8.0.50.20171230-git/glob'
+'gdb-8.0.50.20171231-git/glob'
      source for the GNU filename pattern-matching subroutine
 
-'gdb-8.0.50.20171230-git/mmalloc'
+'gdb-8.0.50.20171231-git/mmalloc'
      source for the GNU memory-mapped malloc package
 
    The simplest way to configure and build GDB is to run 'configure'
 from the 'gdb-VERSION-NUMBER' source directory, which in this example is
-the 'gdb-8.0.50.20171230-git' directory.
+the 'gdb-8.0.50.20171231-git' directory.
 
    First switch to the 'gdb-VERSION-NUMBER' source directory if you are
 not already in it; then run 'configure'.  Pass the identifier for the
@@ -1679,7 +1679,7 @@ platform on which GDB will run as an arg
 
    For example:
 
-     cd gdb-8.0.50.20171230-git
+     cd gdb-8.0.50.20171231-git
      ./configure HOST
      make
 
@@ -1701,8 +1701,8 @@ need to run 'sh' on it explicitly:
 
    If you run 'configure' from a directory that contains source
 directories for multiple libraries or programs, such as the
-'gdb-8.0.50.20171230-git' source directory for version
-8.0.50.20171230-git, 'configure' creates configuration files for every
+'gdb-8.0.50.20171231-git' source directory for version
+8.0.50.20171231-git, 'configure' creates configuration files for every
 directory level underneath (unless you tell it not to, with the
 '--norecursion' option).
 
@@ -1742,13 +1742,13 @@ to specify a path to find 'configure' it
 directory.  If the path to 'configure' would be the same as the argument
 to '--srcdir', you can leave out the '--srcdir' option; it is assumed.)
 
-   For example, with version 8.0.50.20171230-git, you can build GDB in a
+   For example, with version 8.0.50.20171231-git, you can build GDB in a
 separate directory for a Sun 4 like this:
 
-     cd gdb-8.0.50.20171230-git
+     cd gdb-8.0.50.20171231-git
      mkdir ../gdb-sun4
      cd ../gdb-sun4
-     ../gdb-8.0.50.20171230-git/configure sun4
+     ../gdb-8.0.50.20171231-git/configure sun4
      make
 
    When 'configure' builds a configuration using a remote source
@@ -1759,7 +1759,7 @@ the example, you'd find the Sun 4 librar
 
    Make sure that your path to the 'configure' script has just one
 instance of 'gdb' in it.  If your path to 'configure' looks like
-'../gdb-8.0.50.20171230-git/gdb/configure', you are configuring only one
+'../gdb-8.0.50.20171231-git/gdb/configure', you are configuring only one
 subdirectory of GDB, not the whole package.  This leads to build errors
 about missing include files such as 'bfd/bfd.h'.
 
@@ -1775,8 +1775,8 @@ a configured directory--whatever directo
 
    The 'Makefile' that 'configure' generates in each source directory
 also runs recursively.  If you type 'make' in a source directory such as
-'gdb-8.0.50.20171230-git' (or in a separate configured directory
-configured with '--srcdir=DIRNAME/gdb-8.0.50.20171230-git'), you will
+'gdb-8.0.50.20171231-git' (or in a separate configured directory
+configured with '--srcdir=DIRNAME/gdb-8.0.50.20171231-git'), you will
 build all the required libraries, and then build GDB.
 
    When you have multiple hosts or targets configured in separate
@@ -1821,7 +1821,7 @@ you can use it to test your guesses on a
      Invalid configuration `i986v': machine `i986v' not recognized
 
 'config.sub' is also distributed in the GDB source directory
-('gdb-8.0.50.20171230-git', for version 8.0.50.20171230-git).
+('gdb-8.0.50.20171231-git', for version 8.0.50.20171231-git).
 
 
 File: gdb.info,  Node: Configure Options,  Next: System-wide configuration,  Prev: Config Names,  Up: Installing GDB
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdb.info-7 ./gdb/doc/gdb.info-7
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdb.info-7	2017-12-30 01:52:32.000000000 +0000
+++ ./gdb/doc/gdb.info-7	2017-12-31 01:53:10.000000000 +0000
@@ -21,7 +21,7 @@ END-INFO-DIR-ENTRY
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of 'Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 8.0.50.20171230-git.
+Source-Level Debugger' for GDB (GDB) Version 8.0.50.20171231-git.
 
    Copyright (C) 1988-2017 Free Software Foundation, Inc.
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdbinit.5 ./gdb/doc/gdbinit.5
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdbinit.5	2017-12-30 01:52:35.000000000 +0000
+++ ./gdb/doc/gdbinit.5	2017-12-31 01:53:14.000000000 +0000
@@ -124,7 +124,7 @@
 .\" ========================================================================
 .\"
 .IX Title "GDBINIT 5"
-.TH GDBINIT 5 "2017-12-30" "gdb-8.0.50.20171230-git" "GNU Development Tools"
+.TH GDBINIT 5 "2017-12-31" "gdb-8.0.50.20171231-git" "GNU Development Tools"
 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
 .\" way too many mistakes in technical documents.
 .if n .ad l
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdbserver.1 ./gdb/doc/gdbserver.1
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/doc/gdbserver.1	2017-12-30 01:52:35.000000000 +0000
+++ ./gdb/doc/gdbserver.1	2017-12-31 01:53:14.000000000 +0000
@@ -124,7 +124,7 @@
 .\" ========================================================================
 .\"
 .IX Title "GDBSERVER 1"
-.TH GDBSERVER 1 "2017-12-30" "gdb-8.0.50.20171230-git" "GNU Development Tools"
+.TH GDBSERVER 1 "2017-12-31" "gdb-8.0.50.20171231-git" "GNU Development Tools"
 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
 .\" way too many mistakes in technical documents.
 .if n .ad l
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/dtrace-probe.c ./gdb/dtrace-probe.c
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/dtrace-probe.c	2017-12-30 01:48:58.000000000 +0000
+++ ./gdb/dtrace-probe.c	2017-12-31 01:49:03.000000000 +0000
@@ -625,21 +625,15 @@ dtrace_probe::build_arg_exprs (struct gd
      value of the argument when executed at the PC of the probe.  */
   for (dtrace_probe_arg &arg : m_args)
     {
-      struct cleanup *back_to;
-      struct parser_state pstate;
-
       /* Initialize the expression buffer in the parser state.  The
 	 language does not matter, since we are using our own
 	 parser.  */
-      initialize_expout (&pstate, 10, current_language, gdbarch);
-      back_to = make_cleanup (free_current_contents, &pstate.expout);
+      parser_state pstate (10, current_language, gdbarch);
 
       /* The argument value, which is ABI dependent and casted to
 	 `long int'.  */
       gdbarch_dtrace_parse_probe_argument (gdbarch, &pstate, argc);
 
-      discard_cleanups (back_to);
-
       /* Casting to the expected type, but only if the type was
 	 recognized at probe load time.  Otherwise the argument will
 	 be evaluated as the long integer passed to the probe.  */
@@ -650,8 +644,7 @@ dtrace_probe::build_arg_exprs (struct gd
 	  write_exp_elt_opcode (&pstate, UNOP_CAST);
 	}
 
-      reallocate_expout (&pstate);
-      arg.expr = expression_up (pstate.expout);
+      arg.expr = pstate.release ();
       prefixify_expression (arg.expr.get ());
       ++argc;
     }
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/dwarf2read.c ./gdb/dwarf2read.c
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/dwarf2read.c	2017-12-30 01:48:58.000000000 +0000
+++ ./gdb/dwarf2read.c	2017-12-31 01:49:03.000000000 +0000
@@ -277,7 +277,7 @@ protected:
 
 /* A description of the mapped index.  The file format is described in
    a comment by the code that writes the index.  */
-struct mapped_index : public mapped_index_base
+struct mapped_index final : public mapped_index_base
 {
   /* A slot/bucket in the symbol table hash.  */
   struct symbol_table_slot
@@ -318,7 +318,7 @@ struct mapped_index : public mapped_inde
 
 /* A description of the mapped .debug_names.
    Uninitialized map has CU_COUNT 0.  */
-struct mapped_debug_names : public mapped_index_base
+struct mapped_debug_names final : public mapped_index_base
 {
   bfd_endian dwarf5_byte_order;
   bool dwarf5_is_dwarf64;
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/language.h ./gdb/language.h
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/language.h	2017-12-30 01:48:58.000000000 +0000
+++ ./gdb/language.h	2017-12-31 01:49:03.000000000 +0000
@@ -25,12 +25,12 @@
 
 #include "symtab.h"
 #include "common/function-view.h"
+#include "expression.h"
 
 /* Forward decls for prototypes.  */
 struct value;
 struct objfile;
 struct frame_info;
-struct expression;
 struct ui_file;
 struct value_print_options;
 struct type_print_options;
@@ -182,7 +182,7 @@ struct language_defn
        for releasing its previous contents, if necessary.  If 
        VOID_CONTEXT_P, then no value is expected from the expression.  */
 
-    void (*la_post_parser) (struct expression ** expp, int void_context_p);
+    void (*la_post_parser) (expression_up *expp, int void_context_p);
 
     void (*la_printchar) (int ch, struct type *chtype,
 			  struct ui_file * stream);
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/linux-thread-db.c ./gdb/linux-thread-db.c
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/linux-thread-db.c	2017-12-30 01:48:58.000000000 +0000
+++ ./gdb/linux-thread-db.c	2017-12-31 01:49:03.000000000 +0000
@@ -1093,12 +1093,8 @@ static void
 thread_db_detach (struct target_ops *ops, const char *args, int from_tty)
 {
   struct target_ops *target_beneath = find_target_beneath (ops);
-  struct thread_db_info *info;
-
-  info = get_thread_db_info (ptid_get_pid (inferior_ptid));
 
-  if (info)
-    delete_thread_db_info (ptid_get_pid (inferior_ptid));
+  delete_thread_db_info (ptid_get_pid (inferior_ptid));
 
   target_beneath->to_detach (target_beneath, args, from_tty);
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/parse.c ./gdb/parse.c
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/parse.c	2017-12-30 01:48:59.000000000 +0000
+++ ./gdb/parse.c	2017-12-31 01:49:03.000000000 +0000
@@ -152,34 +152,32 @@ end_arglist (void)
 
 /* See definition in parser-defs.h.  */
 
-void
-initialize_expout (struct parser_state *ps, size_t initial_size,
-		   const struct language_defn *lang,
-		   struct gdbarch *gdbarch)
-{
-  ps->expout_size = initial_size;
-  ps->expout_ptr = 0;
-  ps->expout
-    = (struct expression *) xmalloc (sizeof (struct expression)
-				     + EXP_ELEM_TO_BYTES (ps->expout_size));
-  ps->expout->language_defn = lang;
-  ps->expout->gdbarch = gdbarch;
+parser_state::parser_state (size_t initial_size,
+			    const struct language_defn *lang,
+			    struct gdbarch *gdbarch)
+  : expout_size (initial_size),
+    expout (XNEWVAR (expression,
+		     (sizeof (expression)
+		      + EXP_ELEM_TO_BYTES (expout_size)))),
+    expout_ptr (0)
+{
+  expout->language_defn = lang;
+  expout->gdbarch = gdbarch;
 }
 
-/* See definition in parser-defs.h.  */
-
-void
-reallocate_expout (struct parser_state *ps)
+expression_up
+parser_state::release ()
 {
   /* Record the actual number of expression elements, and then
      reallocate the expression memory so that we free up any
      excess elements.  */
 
-  ps->expout->nelts = ps->expout_ptr;
-  ps->expout = (struct expression *)
-     xrealloc (ps->expout,
-	       sizeof (struct expression)
-	       + EXP_ELEM_TO_BYTES (ps->expout_ptr));
+  expout->nelts = expout_ptr;
+  expout.reset (XRESIZEVAR (expression, expout.release (),
+			    (sizeof (expression)
+			     + EXP_ELEM_TO_BYTES (expout_ptr))));
+
+  return std::move (expout);
 }
 
 /* This page contains the functions for adding data to the struct expression
@@ -196,9 +194,9 @@ write_exp_elt (struct parser_state *ps, 
   if (ps->expout_ptr >= ps->expout_size)
     {
       ps->expout_size *= 2;
-      ps->expout = (struct expression *)
-	xrealloc (ps->expout, sizeof (struct expression)
-		  + EXP_ELEM_TO_BYTES (ps->expout_size));
+      ps->expout.reset (XRESIZEVAR (expression, ps->expout.release (),
+				    (sizeof (expression)
+				     + EXP_ELEM_TO_BYTES (ps->expout_size))));
     }
   ps->expout->elts[ps->expout_ptr++] = *expelt;
 }
@@ -1116,7 +1114,6 @@ parse_exp_in_context_1 (const char **str
 			int comma, int void_context_p, int *out_subexp)
 {
   const struct language_defn *lang = NULL;
-  struct parser_state ps;
   int subexp;
 
   lexptr = *stringptr;
@@ -1192,7 +1189,7 @@ parse_exp_in_context_1 (const char **str
      and others called from *.y) ensure CURRENT_LANGUAGE gets restored
      to the value matching SELECTED_FRAME as set by get_current_arch.  */
 
-  initialize_expout (&ps, 10, lang, get_current_arch ());
+  parser_state ps (10, lang, get_current_arch ());
 
   scoped_restore_current_language lang_saver;
   set_language (lang->la_language);
@@ -1205,33 +1202,32 @@ parse_exp_in_context_1 (const char **str
   CATCH (except, RETURN_MASK_ALL)
     {
       if (! parse_completion)
-	{
-	  xfree (ps.expout);
-	  throw_exception (except);
-	}
+	throw_exception (except);
     }
   END_CATCH
 
-  reallocate_expout (&ps);
+  /* We have to operate on an "expression *", due to la_post_parser,
+     which explains this funny-looking double release.  */
+  expression_up result = ps.release ();
 
   /* Convert expression from postfix form as generated by yacc
      parser, to a prefix form.  */
 
   if (expressiondebug)
-    dump_raw_expression (ps.expout, gdb_stdlog,
+    dump_raw_expression (result.get (), gdb_stdlog,
 			 "before conversion to prefix form");
 
-  subexp = prefixify_expression (ps.expout);
+  subexp = prefixify_expression (result.get ());
   if (out_subexp)
     *out_subexp = subexp;
 
-  lang->la_post_parser (&ps.expout, void_context_p);
+  lang->la_post_parser (&result, void_context_p);
 
   if (expressiondebug)
-    dump_prefix_expression (ps.expout, gdb_stdlog);
+    dump_prefix_expression (result.get (), gdb_stdlog);
 
   *stringptr = lexptr;
-  return expression_up (ps.expout);
+  return result;
 }
 
 /* Parse STRING as an expression, and complain if this fails
@@ -1320,7 +1316,7 @@ parse_expression_for_completion (const c
 /* A post-parser that does nothing.  */
 
 void
-null_post_parser (struct expression **exp, int void_context_p)
+null_post_parser (expression_up *exp, int void_context_p)
 {
 }
 
@@ -1866,10 +1862,11 @@ increase_expout_size (struct parser_stat
   if ((ps->expout_ptr + lenelt) >= ps->expout_size)
     {
       ps->expout_size = std::max (ps->expout_size * 2,
-			     ps->expout_ptr + lenelt + 10);
-      ps->expout = (struct expression *)
-	xrealloc (ps->expout, (sizeof (struct expression)
-			       + EXP_ELEM_TO_BYTES (ps->expout_size)));
+				  ps->expout_ptr + lenelt + 10);
+      ps->expout.reset (XRESIZEVAR (expression,
+				    ps->expout.release (),
+				    (sizeof (struct expression)
+				     + EXP_ELEM_TO_BYTES (ps->expout_size))));
     }
 }
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/parser-defs.h ./gdb/parser-defs.h
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/parser-defs.h	2017-12-30 01:48:59.000000000 +0000
+++ ./gdb/parser-defs.h	2017-12-31 01:49:03.000000000 +0000
@@ -37,14 +37,27 @@ extern int parser_debug;
 
 struct parser_state
 {
-  /* The expression related to this parser state.  */
-
-  struct expression *expout;
+  /* Constructor.  INITIAL_SIZE is the initial size of the expout
+     array.  LANG is the language used to parse the expression.  And
+     GDBARCH is the gdbarch to use during parsing.  */
+
+  parser_state (size_t initial_size, const struct language_defn *lang,
+		struct gdbarch *gdbarch);
+
+  DISABLE_COPY_AND_ASSIGN (parser_state);
+
+  /* Resize the allocated expression to the correct size, and return
+     it as an expression_up -- passing ownership to the caller.  */
+  expression_up release ();
 
   /* The size of the expression above.  */
 
   size_t expout_size;
 
+  /* The expression related to this parser state.  */
+
+  expression_up expout;
+
   /* The number of elements already in the expression.  This is used
      to know where to put new elements.  */
 
@@ -156,23 +169,6 @@ struct type_stack
   int size;
 };
 
-/* Helper function to initialize the expout, expout_size, expout_ptr
-   trio inside PS before it is used to store expression elements created
-   during the parsing of an expression.  INITIAL_SIZE is the initial size of
-   the expout array.  LANG is the language used to parse the expression.
-   And GDBARCH is the gdbarch to use during parsing.  */
-
-extern void initialize_expout (struct parser_state *ps,
-			       size_t initial_size,
-			       const struct language_defn *lang,
-			       struct gdbarch *gdbarch);
-
-/* Helper function that reallocates the EXPOUT inside PS in order to
-   eliminate any unused space.  It is generally used when the expression
-   has just been parsed and created.  */
-
-extern void reallocate_expout (struct parser_state *ps);
-
 /* Reverse an expression from suffix form (in which it is constructed)
    to prefix form (in which we can conveniently print or execute it).
    Ordinarily this always returns -1.  However, if EXPOUT_LAST_STRUCT
@@ -265,7 +261,7 @@ extern struct type *follow_types (struct
 
 extern type_instance_flags follow_type_instance_flags ();
 
-extern void null_post_parser (struct expression **, int);
+extern void null_post_parser (expression_up *, int);
 
 extern bool parse_float (const char *p, int len,
 			 const struct type *type, gdb_byte *data);
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/po/gdb.pot ./gdb/po/gdb.pot
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/po/gdb.pot	2017-12-30 01:52:09.000000000 +0000
+++ ./gdb/po/gdb.pot	2017-12-31 01:52:48.000000000 +0000
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2017-12-30 01:52+0000\n"
+"POT-Creation-Date: 2017-12-31 01:52+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -119,7 +119,7 @@ msgstr ""
 msgid "Invalid register name `%s' on expression `%s'."
 msgstr ""
 
-#: aarch64-linux-tdep.c:972 amd64-linux-tdep.c:1493 arm-linux-tdep.c:1670
+#: aarch64-linux-tdep.c:972 amd64-linux-tdep.c:1498 arm-linux-tdep.c:1670
 #: i386-linux-tdep.c:469 s390-linux-tdep.c:2916
 #, possible-c-format
 msgid "Process record and replay target doesn't support syscall number %s\n"
@@ -351,7 +351,7 @@ msgstr ""
 msgid "Cannot unpack %d bits into buffer of %d bytes"
 msgstr ""
 
-#: ada-lang.c:2751 ada-lang.c:10039 valops.c:1000
+#: ada-lang.c:2751 ada-lang.c:10038 valops.c:1000
 msgid "Left operand of assignment is not a modifiable lvalue."
 msgstr ""
 
@@ -466,266 +466,266 @@ msgstr ""
 
 #. PNH: Do we ever get here?  See ada_search_struct_field,
 #. find_struct_field.
-#: ada-lang.c:7539
+#: ada-lang.c:7538
 msgid "Cannot assign this kind of variant record"
 msgstr ""
 
-#: ada-lang.c:7658 valops.c:2185
+#: ada-lang.c:7657 valops.c:2185
 #, possible-c-format
 msgid "There is no member named %s."
 msgstr ""
 
-#: ada-lang.c:7664
+#: ada-lang.c:7663
 msgid "Attempt to extract a component of a value that is not a record."
 msgstr ""
 
-#: ada-lang.c:7727
+#: ada-lang.c:7726
 #, possible-c-format
 msgid "Type %s is not a structure or union type"
 msgstr ""
 
-#: ada-lang.c:7728
+#: ada-lang.c:7727
 msgid "(null)"
 msgstr ""
 
-#: ada-lang.c:7811 inferior.c:506
+#: ada-lang.c:7810 inferior.c:506
 msgid "<null>"
 msgstr ""
 
-#: ada-lang.c:7813
+#: ada-lang.c:7812
 #, possible-c-format
 msgid "Type %s has no component named %s"
 msgstr ""
 
-#: ada-lang.c:8169
+#: ada-lang.c:8168
 msgid "unexpected null name on descriptive type"
 msgstr ""
 
-#: ada-lang.c:8560
+#: ada-lang.c:8559
 #, possible-c-format
 msgid "Invalid type size for `%s' detected: %d."
 msgstr ""
 
-#: ada-lang.c:8563
+#: ada-lang.c:8562
 #, possible-c-format
 msgid "Invalid type size for <unnamed> detected: %d."
 msgstr ""
 
-#: ada-lang.c:8574
+#: ada-lang.c:8573
 msgid "record type with dynamic size is larger than varsize-limit"
 msgstr ""
 
-#: ada-lang.c:9016
+#: ada-lang.c:9015
 msgid "array type with dynamic size is larger than varsize-limit"
 msgstr ""
 
-#: ada-lang.c:9120
+#: ada-lang.c:9119
 #, possible-c-format
 msgid "unable to read value of %s (%s)"
 msgstr ""
 
-#: ada-lang.c:9404
+#: ada-lang.c:9403
 msgid "'POS only defined on discrete types"
 msgstr ""
 
-#: ada-lang.c:9407
+#: ada-lang.c:9406
 msgid "enumeration value is invalid: can't find 'POS"
 msgstr ""
 
-#: ada-lang.c:9424
+#: ada-lang.c:9423
 msgid "'VAL only defined on discrete types"
 msgstr ""
 
-#: ada-lang.c:9426
+#: ada-lang.c:9425
 msgid "'VAL requires integral argument"
 msgstr ""
 
-#: ada-lang.c:9433
+#: ada-lang.c:9432
 msgid "argument to 'VAL out of range"
 msgstr ""
 
-#: ada-lang.c:9751 ada-lang.c:9789
+#: ada-lang.c:9750 ada-lang.c:9788
 msgid "unable to determine array bounds"
 msgstr ""
 
-#: ada-lang.c:9830
+#: ada-lang.c:9829
 msgid "cannot assign arrays of different length"
 msgstr ""
 
-#: ada-lang.c:9844
+#: ada-lang.c:9843
 msgid "Incompatible types in assignment"
 msgstr ""
 
-#: ada-lang.c:9878
+#: ada-lang.c:9877
 #, possible-c-format
 msgid "second operand of %s must not be zero."
 msgstr ""
 
-#: ada-lang.c:9929
+#: ada-lang.c:9928
 msgid "Attempt to compare array with non-array"
 msgstr ""
 
-#: ada-lang.c:10055
+#: ada-lang.c:10054
 msgid "Left-hand side must be array or record."
 msgstr ""
 
-#: ada-lang.c:10080
+#: ada-lang.c:10079
 msgid "Misplaced 'others' clause"
 msgstr ""
 
-#: ada-lang.c:10085
+#: ada-lang.c:10084
 msgid "Internal error: bad aggregate clause"
 msgstr ""
 
-#: ada-lang.c:10107
+#: ada-lang.c:10106
 msgid "Extra components in aggregate ignored."
 msgstr ""
 
-#: ada-lang.c:10174
+#: ada-lang.c:10173
 msgid "Invalid record component association."
 msgstr ""
 
-#: ada-lang.c:10180
+#: ada-lang.c:10179
 #, possible-c-format
 msgid "Unknown component name: %s."
 msgstr ""
 
-#: ada-lang.c:10185
+#: ada-lang.c:10184
 msgid "Index in component association out of bounds."
 msgstr ""
 
-#: ada-lang.c:10261
+#: ada-lang.c:10260
 msgid "Internal error: miscounted aggregate components."
 msgstr ""
 
-#: ada-lang.c:10681
+#: ada-lang.c:10680
 msgid "Fixed-point values must be assigned to fixed-point variables"
 msgstr ""
 
-#: ada-lang.c:10702
+#: ada-lang.c:10701
 msgid "Operands of fixed-point addition must have the same type"
 msgstr ""
 
-#: ada-lang.c:10728
+#: ada-lang.c:10727
 msgid "Operands of fixed-point subtraction must have the same type"
 msgstr ""
 
 #. Only encountered when an unresolved symbol occurs in a
 #. context other than a function call, in which case, it is
 #. invalid.
-#: ada-lang.c:10831 ada-lang.c:10921
+#: ada-lang.c:10830 ada-lang.c:10920
 #, possible-c-format
 msgid "Unexpected unresolved symbol, %s, during evaluation"
 msgstr ""
 
-#: ada-lang.c:10977
+#: ada-lang.c:10976
 #, possible-c-format
 msgid "cannot subscript or call something of type `%s'"
 msgstr ""
 
-#: ada-lang.c:11011
+#: ada-lang.c:11010
 msgid "cannot subscript or call a record"
 msgstr ""
 
-#: ada-lang.c:11013
+#: ada-lang.c:11012
 #, possible-c-format
 msgid "wrong number of subscripts; expecting %d"
 msgstr ""
 
-#: ada-lang.c:11025 ada-lang.c:11039
+#: ada-lang.c:11024 ada-lang.c:11038
 msgid "element type of array unknown"
 msgstr ""
 
-#: ada-lang.c:11048
+#: ada-lang.c:11047
 msgid "Attempt to index or call something other than an array or function"
 msgstr ""
 
-#: ada-lang.c:11078
+#: ada-lang.c:11077
 msgid "cannot slice a packed array"
 msgstr ""
 
-#: ada-lang.c:11106 valops.c:3788
+#: ada-lang.c:11105 valops.c:3788
 msgid "cannot take slice of non-array"
 msgstr ""
 
-#: ada-lang.c:11145
+#: ada-lang.c:11144
 msgid "Membership test incompletely implemented; always returns true"
 msgstr ""
 
-#: ada-lang.c:11234
+#: ada-lang.c:11233
 #, possible-c-format
 msgid "Invalid operand to '%s"
 msgstr ""
 
 #. Should never happen.
-#: ada-lang.c:11264 ada-lang.c:11289 ada-lang.c:11324
+#: ada-lang.c:11263 ada-lang.c:11288 ada-lang.c:11323
 msgid "unexpected attribute encountered"
 msgstr ""
 
-#: ada-lang.c:11297
+#: ada-lang.c:11296
 msgid "the 'length attribute applies only to array types"
 msgstr ""
 
-#: ada-lang.c:11301
+#: ada-lang.c:11300
 msgid "unimplemented type attribute"
 msgstr ""
 
-#: ada-lang.c:11374
+#: ada-lang.c:11373
 msgid "'modulus must be applied to modular type"
 msgstr ""
 
-#: ada-lang.c:11471
+#: ada-lang.c:11470
 msgid "Attempt to dereference null array pointer."
 msgstr ""
 
-#: ada-lang.c:11515 eval.c:2637 eval.c:3114 valops.c:1589
+#: ada-lang.c:11514 eval.c:2637 eval.c:3114 valops.c:1589
 msgid "Attempt to take contents of a non-pointer value."
 msgstr ""
 
-#: ada-lang.c:11594 eval.c:2836
+#: ada-lang.c:11593 eval.c:2836
 msgid "Attempt to use a type name as an expression"
 msgstr ""
 
-#: ada-lang.c:11606
+#: ada-lang.c:11605
 #, possible-c-format
 msgid ""
 "Undefined name, ambiguous name, or renaming used in component association: %"
 "s."
 msgstr ""
 
-#: ada-lang.c:11609
+#: ada-lang.c:11608
 msgid "Aggregates only allowed on the right of an assignment"
 msgstr ""
 
-#: ada-lang.c:11612
+#: ada-lang.c:11611
 msgid "aggregate apparently mangled"
 msgstr ""
 
-#: ada-lang.c:11894
+#: ada-lang.c:11893
 msgid "Unknown lower bound, using 1."
 msgstr ""
 
-#: ada-lang.c:11910
+#: ada-lang.c:11909
 #, possible-c-format
 msgid "Unknown upper bound, using %ld."
 msgstr ""
 
-#: ada-lang.c:12095
+#: ada-lang.c:12094
 msgid ""
 "Your Ada runtime appears to be missing some debugging information.\n"
 "Cannot insert Ada exception catchpoint in this configuration."
 msgstr ""
 
-#: ada-lang.c:12105
+#: ada-lang.c:12104
 #, possible-c-format
 msgid "Symbol \"%s\" is not a function (class = %d)"
 msgstr ""
 
-#: ada-lang.c:12147
+#: ada-lang.c:12146
 msgid "Unable to insert catchpoint.  Is this an Ada main program?"
 msgstr ""
 
-#: ada-lang.c:12155
+#: ada-lang.c:12154
 msgid "Unable to insert catchpoint. Try to start the program first."
 msgstr ""
 
@@ -735,115 +735,115 @@ msgstr ""
 #. configurable run time mode, or that a-except as been optimized
 #. out by the linker...  In any case, at this point it is not worth
 #. supporting this feature.
-#: ada-lang.c:12164
+#: ada-lang.c:12163
 msgid "Cannot insert Ada exception catchpoints in this configuration."
 msgstr ""
 
-#: ada-lang.c:12329 ada-lang.c:12767 ada-lang.c:12811 ada-lang.c:12842
+#: ada-lang.c:12328 ada-lang.c:12766 ada-lang.c:12810 ada-lang.c:12841
 msgid "unexpected catchpoint type"
 msgstr ""
 
-#: ada-lang.c:12421
+#: ada-lang.c:12420
 #, possible-c-format
 msgid "failed to get exception name: %s"
 msgstr ""
 
-#: ada-lang.c:12532
+#: ada-lang.c:12531
 #, possible-c-format
 msgid "failed to reevaluate internal exception condition for catchpoint %d: %s"
 msgstr ""
 
-#: ada-lang.c:12614
+#: ada-lang.c:12613
 msgid "Error in testing exception condition:\n"
 msgstr ""
 
-#: ada-lang.c:12748 ada-lang.c:12792
+#: ada-lang.c:12747 ada-lang.c:12791
 #, possible-c-format
 msgid "`%s' Ada exception"
 msgstr ""
 
-#: ada-lang.c:12782 break-catch-throw.c:325
+#: ada-lang.c:12781 break-catch-throw.c:325
 msgid "Temporary catchpoint "
 msgstr ""
 
-#: ada-lang.c:12783 break-catch-throw.c:326
+#: ada-lang.c:12782 break-catch-throw.c:326
 msgid "Catchpoint "
 msgstr ""
 
-#: ada-lang.c:12799
+#: ada-lang.c:12798
 msgid "all Ada exceptions"
 msgstr ""
 
-#: ada-lang.c:12803
+#: ada-lang.c:12802
 msgid "unhandled Ada exceptions"
 msgstr ""
 
-#: ada-lang.c:12807
+#: ada-lang.c:12806
 msgid "failed Ada assertions"
 msgstr ""
 
-#: ada-lang.c:13061
+#: ada-lang.c:13060
 msgid "Condition missing after `if' keyword"
 msgstr ""
 
-#: ada-lang.c:13072 breakpoint.c:886 breakpoint.c:900
+#: ada-lang.c:13071 breakpoint.c:886 breakpoint.c:900
 msgid "Junk at end of expression"
 msgstr ""
 
-#: ada-lang.c:13120 ada-lang.c:13143
+#: ada-lang.c:13119 ada-lang.c:13142
 #, possible-c-format
 msgid "unexpected catchpoint kind (%d)"
 msgstr ""
 
-#: ada-lang.c:13321
+#: ada-lang.c:13320
 msgid "condition missing after `if' keyword"
 msgstr ""
 
-#: ada-lang.c:13328 break-catch-throw.c:447 breakpoint.c:9277
+#: ada-lang.c:13327 break-catch-throw.c:447 breakpoint.c:9277
 #: breakpoint.c:11205 breakpoint.c:11336 breakpoint.c:11380 breakpoint.c:14991
 msgid "Junk at end of arguments."
 msgstr ""
 
-#: ada-lang.c:13644
+#: ada-lang.c:13643
 msgid "invalid regular expression"
 msgstr ""
 
-#: ada-lang.c:13659
+#: ada-lang.c:13658
 #, possible-c-format
 msgid "All Ada exceptions matching regular expression \"%s\":\n"
 msgstr ""
 
-#: ada-lang.c:13661
+#: ada-lang.c:13660
 msgid "All defined Ada exceptions:\n"
 msgstr ""
 
 #. XXX: gdb_sprint_host_address, type_sprint
-#: ada-lang.c:13841
+#: ada-lang.c:13840
 msgid "Type @"
 msgstr ""
 
-#: ada-lang.c:14359
+#: ada-lang.c:14358
 msgid "\"set ada\" must be followed by the name of a setting.\n"
 msgstr ""
 
-#: ada-lang.c:14432
+#: ada-lang.c:14431
 msgid "Prefix command for changing Ada-specfic settings"
 msgstr ""
 
-#: ada-lang.c:14436
+#: ada-lang.c:14435
 msgid "Generic command for showing Ada-specific settings."
 msgstr ""
 
-#: ada-lang.c:14440
+#: ada-lang.c:14439
 msgid "Enable or disable an optimization trusting PAD types over XVS types"
 msgstr ""
 
-#: ada-lang.c:14441
+#: ada-lang.c:14440
 msgid ""
 "Show whether an optimization trusting PAD types over XVS types is activated"
 msgstr ""
 
-#: ada-lang.c:14443
+#: ada-lang.c:14442
 msgid ""
 "This is related to the encoding used by the GNAT compiler.  The debugger\n"
 "should normally trust the contents of PAD types, but certain older versions\n"
@@ -855,54 +855,54 @@ msgid ""
 "this option to \"off\" unless necessary."
 msgstr ""
 
-#: ada-lang.c:14454
+#: ada-lang.c:14453
 msgid ""
 "Enable or disable the output of formal and return types for functions in the "
 "overloads selection menu"
 msgstr ""
 
-#: ada-lang.c:14456
+#: ada-lang.c:14455
 msgid ""
 "Show whether the output of formal and return types for functions in the "
 "overloads selection menu is activated"
 msgstr ""
 
-#: ada-lang.c:14461
+#: ada-lang.c:14460
 msgid ""
 "Catch Ada exceptions, when raised.\n"
 "With an argument, catch only exceptions with the given name."
 msgstr ""
 
-#: ada-lang.c:14468
+#: ada-lang.c:14467
 msgid ""
 "Catch failed Ada assertions, when raised.\n"
 "With an argument, catch only exceptions with the given name."
 msgstr ""
 
-#: ada-lang.c:14479
+#: ada-lang.c:14478
 msgid ""
 "List all Ada exception names.\n"
 "If a regular expression is passed as an argument, only those matching\n"
 "the regular expression are listed."
 msgstr ""
 
-#: ada-lang.c:14485
+#: ada-lang.c:14484
 msgid "Set Ada maintenance-related variables."
 msgstr ""
 
-#: ada-lang.c:14490
+#: ada-lang.c:14489
 msgid "Show Ada maintenance-related variables"
 msgstr ""
 
-#: ada-lang.c:14497
+#: ada-lang.c:14496
 msgid "Set whether descriptive types generated by GNAT should be ignored."
 msgstr ""
 
-#: ada-lang.c:14498
+#: ada-lang.c:14497
 msgid "Show whether descriptive types generated by GNAT should be ignored."
 msgstr ""
 
-#: ada-lang.c:14499
+#: ada-lang.c:14498
 msgid ""
 "When enabled, the debugger will stop using the DW_AT_GNAT_descriptive_type\n"
 "DWARF attribute."
@@ -9043,7 +9043,7 @@ msgstr ""
 msgid "skipping section '%s' which does not contain valid DOF data."
 msgstr ""
 
-#: dtrace-probe.c:670 stap-probe.c:188
+#: dtrace-probe.c:663 stap-probe.c:188
 #, possible-c-format
 msgid ""
 "Probe '%s' has %d arguments, but GDB is requesting\n"
@@ -9051,25 +9051,25 @@ msgid ""
 "report this bug."
 msgstr ""
 
-#: dtrace-probe.c:790 dtrace-probe.c:814
+#: dtrace-probe.c:783 dtrace-probe.c:807
 msgid "No inferior running"
 msgstr ""
 
-#: dtrace-probe.c:823
+#: dtrace-probe.c:816
 #, possible-c-format
 msgid "Probe %s:%s cannot be disabled: no enablers."
 msgstr ""
 
-#: dtrace-probe.c:869
+#: dtrace-probe.c:862
 #, possible-c-format
 msgid "could not obtain the contents ofsection '%s' in objfile `%s'."
 msgstr ""
 
-#: dtrace-probe.c:896
+#: dtrace-probe.c:889
 msgid "Enabled"
 msgstr ""
 
-#: dtrace-probe.c:915
+#: dtrace-probe.c:908
 msgid ""
 "Show information about DTrace static probes.\n"
 "Usage: info probes dtrace [PROVIDER [NAME [OBJECT]]]\n"
@@ -16802,82 +16802,82 @@ msgid ""
 "data are likely unreliable.  Connect to gdbserver inside the container."
 msgstr ""
 
-#: linux-thread-db.c:1187
+#: linux-thread-db.c:1183
 #, possible-c-format
 msgid "find_new_threads_callback: cannot get thread info: %s"
 msgstr ""
 
-#: linux-thread-db.c:1279
+#: linux-thread-db.c:1275
 #, possible-c-format
 msgid "Found %d new threads in iteration %d.\n"
 msgstr ""
 
-#: linux-thread-db.c:1322
+#: linux-thread-db.c:1318
 #, possible-c-format
 msgid "Cannot find new threads: %s"
 msgstr ""
 
-#: linux-thread-db.c:1434
+#: linux-thread-db.c:1430
 #, possible-c-format
 msgid "Thread handle size mismatch: %d vs %zu (from libthread_db)"
 msgstr ""
 
-#: linux-thread-db.c:1482
+#: linux-thread-db.c:1478
 msgid "No TLS library support"
 msgstr ""
 
-#: linux-thread-db.c:1497
+#: linux-thread-db.c:1493
 msgid "TLS load module not found"
 msgstr ""
 
-#: linux-thread-db.c:1516
+#: linux-thread-db.c:1512
 msgid "TLS not allocated yet"
 msgstr ""
 
-#: linux-thread-db.c:1600
+#: linux-thread-db.c:1596
 msgid "'info auto-load libthread-db' does not accept any parameters"
 msgstr ""
 
-#: linux-thread-db.c:1708
+#: linux-thread-db.c:1704
 msgid "No auto-loaded libthread-db.\n"
 msgstr ""
 
-#: linux-thread-db.c:1750
+#: linux-thread-db.c:1746
 msgid "Set search path for libthread_db."
 msgstr ""
 
-#: linux-thread-db.c:1751
+#: linux-thread-db.c:1747
 msgid "Show the current search path or libthread_db."
 msgstr ""
 
-#: linux-thread-db.c:1752
+#: linux-thread-db.c:1748
 msgid ""
 "This path is used to search for libthread_db to be loaded into gdb itself.\n"
 "Its value is a colon (':') separate list of directories to search.\n"
 "Setting the search path to an empty list resets it to its default value."
 msgstr ""
 
-#: linux-thread-db.c:1762
+#: linux-thread-db.c:1758
 msgid "Set libthread-db debugging."
 msgstr ""
 
-#: linux-thread-db.c:1763
+#: linux-thread-db.c:1759
 msgid "Show libthread-db debugging."
 msgstr ""
 
-#: linux-thread-db.c:1764
+#: linux-thread-db.c:1760
 msgid "When non-zero, libthread-db debugging is enabled."
 msgstr ""
 
-#: linux-thread-db.c:1771
+#: linux-thread-db.c:1767
 msgid "Enable or disable auto-loading of inferior specific libthread_db."
 msgstr ""
 
-#: linux-thread-db.c:1772
+#: linux-thread-db.c:1768
 msgid "Show whether auto-loading inferior specific libthread_db is enabled."
 msgstr ""
 
-#: linux-thread-db.c:1773
+#: linux-thread-db.c:1769
 msgid ""
 "If enabled, libthread_db will be searched in 'set libthread-db-search-path'\n"
 "locations to load libthread_db compatible with the inferior.\n"
@@ -16885,7 +16885,7 @@ msgid ""
 "This options has security implications for untrusted inferiors."
 msgstr ""
 
-#: linux-thread-db.c:1783
+#: linux-thread-db.c:1779
 msgid ""
 "Print the list of loaded inferior specific libthread_db.\n"
 "Usage: info auto-load libthread-db"
@@ -20080,40 +20080,40 @@ msgstr ""
 msgid "Parser debugging is %s.\n"
 msgstr ""
 
-#: parse.c:848
+#: parse.c:846
 msgid "?error in operator_length_standard"
 msgstr ""
 
-#: parse.c:1135
+#: parse.c:1132
 msgid "expression to compute"
 msgstr ""
 
-#: parse.c:1245
+#: parse.c:1241
 msgid "Junk after end of expression."
 msgstr ""
 
-#: parse.c:1885
+#: parse.c:1882
 msgid "Set expression debugging."
 msgstr ""
 
-#: parse.c:1886
+#: parse.c:1883
 msgid "Show expression debugging."
 msgstr ""
 
-#: parse.c:1887
+#: parse.c:1884
 msgid ""
 "When non-zero, the internal representation of expressions will be printed."
 msgstr ""
 
-#: parse.c:1894
+#: parse.c:1891
 msgid "Set parser debugging."
 msgstr ""
 
-#: parse.c:1895
+#: parse.c:1892
 msgid "Show parser debugging."
 msgstr ""
 
-#: parse.c:1896
+#: parse.c:1893
 msgid "When non-zero, expression parser tracing will be enabled."
 msgstr ""
 
@@ -26626,66 +26626,66 @@ msgstr ""
 
 #. We have an error, because we don't expect anything
 #. except 1, 2, 4 and 8.
-#: stap-probe.c:1247
+#: stap-probe.c:1233
 #, possible-c-format
 msgid "unrecognized bitness %s%c' for probe `%s'"
 msgstr ""
 
-#: stap-probe.c:1317
+#: stap-probe.c:1303
 msgid ""
 "The SystemTap SDT probe support is not fully implemented on this target;\n"
 "you will not be able to inspect the arguments of the probes.\n"
 "Please report a bug against GDB requesting a port to this target."
 msgstr ""
 
-#: stap-probe.c:1435
+#: stap-probe.c:1421
 msgid "Could not read the value of a SystemTap semaphore."
 msgstr ""
 
-#: stap-probe.c:1452
+#: stap-probe.c:1438
 msgid "Could not write the value of a SystemTap semaphore."
 msgstr ""
 
-#: stap-probe.c:1529
+#: stap-probe.c:1515
 #, possible-c-format
 msgid "corrupt probe name when reading `%s'"
 msgstr ""
 
-#: stap-probe.c:1566
+#: stap-probe.c:1552
 #, possible-c-format
 msgid "corrupt probe argument when reading `%s'"
 msgstr ""
 
-#: stap-probe.c:1607
+#: stap-probe.c:1593
 #, possible-c-format
 msgid "could not obtain base address for SystemTap section on objfile `%s'."
 msgstr ""
 
 #. If we are here, it means we have failed to parse every known
 #. probe.
-#: stap-probe.c:1677
+#: stap-probe.c:1663
 msgid "could not parse SystemTap probe(s) from inferior"
 msgstr ""
 
-#: stap-probe.c:1699
+#: stap-probe.c:1685
 msgid "Semaphore"
 msgstr ""
 
-#: stap-probe.c:1719
+#: stap-probe.c:1705
 msgid "Set SystemTap expression debugging."
 msgstr ""
 
-#: stap-probe.c:1720
+#: stap-probe.c:1706
 msgid "Show SystemTap expression debugging."
 msgstr ""
 
-#: stap-probe.c:1721
+#: stap-probe.c:1707
 msgid ""
 "When non-zero, the internal representation of SystemTap expressions will be "
 "printed."
 msgstr ""
 
-#: stap-probe.c:1728
+#: stap-probe.c:1714
 msgid ""
 "Show information about SystemTap static probes.\n"
 "Usage: info probes stap [PROVIDER [NAME [OBJECT]]]\n"
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/rust-exp.c ./gdb/rust-exp.c
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/rust-exp.c	2017-12-30 01:52:08.000000000 +0000
+++ ./gdb/rust-exp.c	2017-12-31 01:52:46.000000000 +0000
@@ -4844,8 +4844,7 @@ rust_lex_tests (void)
 						       &test_obstack);
 
   // Set up dummy "parser", so that rust_type works.
-  struct parser_state ps;
-  initialize_expout (&ps, 0, &rust_language_defn, target_gdbarch ());
+  struct parser_state ps (0, &rust_language_defn, target_gdbarch ());
   rust_parser parser (&ps);
 
   rust_lex_test_one ("", 0);
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/rust-exp.y ./gdb/rust-exp.y
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/rust-exp.y	2017-12-30 01:48:59.000000000 +0000
+++ ./gdb/rust-exp.y	2017-12-31 01:49:03.000000000 +0000
@@ -2666,8 +2666,7 @@ rust_lex_tests (void)
 						       &test_obstack);
 
   // Set up dummy "parser", so that rust_type works.
-  struct parser_state ps;
-  initialize_expout (&ps, 0, &rust_language_defn, target_gdbarch ());
+  struct parser_state ps (0, &rust_language_defn, target_gdbarch ());
   rust_parser parser (&ps);
 
   rust_lex_test_one ("", 0);
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/stap-probe.c ./gdb/stap-probe.c
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/stap-probe.c	2017-12-30 01:48:59.000000000 +0000
+++ ./gdb/stap-probe.c	2017-12-31 01:49:03.000000000 +0000
@@ -1146,25 +1146,14 @@ static expression_up
 stap_parse_argument (const char **arg, struct type *atype,
 		     struct gdbarch *gdbarch)
 {
-  struct stap_parse_info p;
-  struct cleanup *back_to;
-
   /* We need to initialize the expression buffer, in order to begin
      our parsing efforts.  We use language_c here because we may need
      to do pointer arithmetics.  */
-  initialize_expout (&p.pstate, 10, language_def (language_c), gdbarch);
-  back_to = make_cleanup (free_current_contents, &p.pstate.expout);
-
-  p.saved_arg = *arg;
-  p.arg = *arg;
-  p.arg_type = atype;
-  p.gdbarch = gdbarch;
-  p.inside_paren_p = 0;
+  struct stap_parse_info p (*arg, atype, 10, language_def (language_c),
+			    gdbarch);
 
   stap_parse_argument_1 (&p, 0, STAP_OPERAND_PREC_NONE);
 
-  discard_cleanups (back_to);
-
   gdb_assert (p.inside_paren_p == 0);
 
   /* Casting the final expression to the appropriate type.  */
@@ -1172,13 +1161,10 @@ stap_parse_argument (const char **arg, s
   write_exp_elt_type (&p.pstate, atype);
   write_exp_elt_opcode (&p.pstate, UNOP_CAST);
 
-  reallocate_expout (&p.pstate);
-
   p.arg = skip_spaces (p.arg);
   *arg = p.arg;
 
-  /* We can safely return EXPOUT here.  */
-  return expression_up (p.pstate.expout);
+  return p.pstate.release ();
 }
 
 /* Implementation of 'parse_arguments' method.  */
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/stap-probe.h ./gdb/stap-probe.h
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/gdb/stap-probe.h	2017-12-30 01:48:59.000000000 +0000
+++ ./gdb/stap-probe.h	2017-12-31 01:49:03.000000000 +0000
@@ -28,6 +28,20 @@
 
 struct stap_parse_info
 {
+  stap_parse_info (const char *arg_, struct type *arg_type_,
+		   size_t initial_size, const struct language_defn *lang,
+		   struct gdbarch *gdbarch)
+    : arg (arg_),
+      pstate (initial_size, lang, gdbarch),
+      saved_arg (arg_),
+      arg_type (arg_type_),
+      gdbarch (gdbarch),
+      inside_paren_p (0)
+  {
+  }
+
+  DISABLE_COPY_AND_ASSIGN (stap_parse_info);
+
   /* The probe's argument in a string format.  */
   const char *arg;
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/md5.sum ./md5.sum
--- /sourceware/snapshot-tmp/gdb/snapshot/current-gdb/update-snapshot/old/gdb-8.0.50.20171230/md5.sum	2017-12-30 01:52:40.000000000 +0000
+++ ./md5.sum	2017-12-31 01:53:19.000000000 +0000
@@ -40,7 +40,7 @@ ac3acf2dc4197d20a011e34dd8c2bc65  bfd/el
 b515cd5c69180816efb7fb344409e8b3  bfd/wasm-module.c
 876d59706f754194130d46334a9c2efd  bfd/elf64-mips.c
 f166d84c263d357d6eadb7a8d861e7a4  bfd/cpu-m9s12x.c
-0b107602d7b919fc79d730bf2f8070ef  bfd/version.h
+d546996b514d8c9ce466a13c1fa7aa31  bfd/version.h
 a11a835899b8428781e5df11be161cbf  bfd/cpu-tilegx.c
 1defa586e335cc6419634a11161d4347  bfd/coff-mcore.c
 9eb1c7d27ae726d800107588bfde381c  bfd/cpu-avr.c
@@ -857,7 +857,7 @@ f8cd7fc9b418f09cf72a1202cd580757  gdb/co
 eebd3fcd9c373512517ca80306eaa8e4  gdb/common/errors.h
 dc8ba535da4babe5ad72c96fc5c65b7f  gdb/common/common.host
 b4e2972c67cdc7a3f0d111dc12e0187a  gdb/common/format.c
-3aa6d6d350b05a822fc61207d06ef995  gdb/common/diagnostics.h
+cf117357faa428beafa2745cd5e02956  gdb/common/diagnostics.h
 57848e077b4f622d0dccd2802bd5e356  gdb/common/run-time-clock.c
 f5e6489c9461e386561859a7b8e76375  gdb/common/errors.c
 47ba757935403c0593bba5bff4f24c76  gdb/common/gdb_vecs.h
@@ -1316,10 +1316,10 @@ e5d4020f467bc843f6879226cbc81831  gdb/al
 739e1ebfc484c017b99fa0511fd9e615  gdb/solib-aix.c
 5b650f456a42751afe57608722bef14a  gdb/warning.m4
 8dc1856a5563ed93d98af9b40269bfde  gdb/ppc-tdep.h
-ba4599ca8f455d968fed5da6fb94f348  gdb/dtrace-probe.c
+6f62b939092742167f0bbb560933cedd  gdb/dtrace-probe.c
 42b165ec3ece14eee76ad96fa7923ab2  gdb/configure.host
 06e30e43d1cd3ccb301fceb2835e03a4  gdb/x86-nat.h
-776d8817adb39ed522280dbdbb98f5e6  gdb/linux-thread-db.c
+ded4b39c78d848fbfdc59cd4c1e8106c  gdb/linux-thread-db.c
 7269a9e48ffdbd93825d0827949c27b5  gdb/c-exp.c
 7a95068691661e0d3e9a5877cde22630  gdb/alpha-linux-nat.c
 74dfdb7c28864e5b5bf9c03fea163eca  gdb/ada-exp.c
@@ -1384,7 +1384,7 @@ ddafac86daa9a86d5c21449bc2d0fbb9  gdb/sc
 98ae3149acca3e1de077239a711e1bdf  gdb/coff-pe-read.c
 a0bc36a138527c532887a687099a1472  gdb/bcache.c
 e82e1a53dbb63d792fc8645192a4b2cb  gdb/gdb-gdb.gdb.in
-886eaf82503a242f7fbcd456e2f755d6  gdb/rust-exp.c
+d3a5df803e81a1b268adc0acbb921370  gdb/rust-exp.c
 f0daa1d13668c9eb0a4db6bbd5a72ca4  gdb/i386-linux-tdep.h
 f318ddca2db2704f2ee0d8aa7b00067c  gdb/tui/tui-winsource.h
 8429e8ade4274d5d0afc029ab0db3276  gdb/tui/tui-stack.h
@@ -1447,7 +1447,7 @@ f586a1275f803f1dcd60044795298e0b  gdb/ma
 8f950ad7d249147fd40d4014aae8945f  gdb/arch-utils.c
 d2d39a864ef877fc35762a42831bfb17  gdb/cp-valprint.c
 41925a15aaee36b9b92d52ae85c4cd4d  gdb/disable-implicit-rules.mk
-7c277d6f6e4becb8c55250b45ee87a4d  gdb/dwarf2read.c
+27fc43708c0caf688d40ecfde1bc0acc  gdb/dwarf2read.c
 85f9b4c30e98b5c3695fadd04781b702  gdb/or1k-tdep.c
 c771bb1bc4dea79acea3f59647fd97f0  gdb/amd64-windows-tdep.c
 e4708e4b23e4e6ddd07c7245736d37b3  gdb/testsuite/config/cygmon.exp
@@ -4970,55 +4970,55 @@ dd39a73007476afbc34296c28d56f00c  gdb/sy
 569409b2edfe7d71511c03f0ce4145db  gdb/f-valprint.c
 efed609ea392afa101ad15d6b88d1a6c  gdb/gdb_curses.h
 8108dd8f906f2654fecc74958cf383db  gdb/doc/psrc.sed
-1a9e45161ba87d6ef49714d913c16417  gdb/doc/gdb.info-3
-9fb213c0476e2d191fc0c4fd58812a09  gdb/doc/gdb.info-4
+6908e496d501508bf982eb0b80da7c9d  gdb/doc/gdb.info-3
+745cda6c6a32b58d2724e66d3dab44b0  gdb/doc/gdb.info-4
 ab0fe311032294b952da80585b8b90e7  gdb/doc/fdl.texi
 3d7b4a88ffa8e4dd1af1244ec5dbfc5d  gdb/doc/Makefile.in
-aeb17236a53102f32e42f7d2471dec0d  gdb/doc/gdb.info-7
+f4bdb2a92aea19cd0d07f34db66fa194  gdb/doc/gdb.info-7
 3e88538f371ece70b44cd38bf1a0d646  gdb/doc/observer.texi
-0e581c7dee45bb1c7d2b8a7db1683cc6  gdb/doc/gdbserver.1
+afc1b14df747cf7ad4b3ff48fea6e573  gdb/doc/gdbserver.1
 c1a16c4a0157b4ca8876c7d024412623  gdb/doc/guile.texi
 f81a0e00e0cb9e41b078069fb9bedb07  gdb/doc/stack_frame.txt
 259d4d661f188d2df9adb15f7893bc4c  gdb/doc/stabs.info
-71759fbe0bbb3ab67de2455972855605  gdb/doc/gdb.info-5
+e82b5c4aa1b1653d9d151f4a17edc647  gdb/doc/gdb.info-5
 568d773184433e38a4c967fbcc881c7f  gdb/doc/agentexpr.texi
 66674dc351ba95941f422dc18cae24bb  gdb/doc/.gitignore
-3ff7c4e8ba3676e01b6936c707f92cb8  gdb/doc/gdb.info-1
+e9c877301e05b7e5e02925fbed800a67  gdb/doc/gdb.info-1
 d5d06eaf9b4d44aa442a4a281aa9aea4  gdb/doc/a4rc.sed
-59cee33423f7548e88322d7e6dbcfd7b  gdb/doc/gdb.info-6
+bc02fd27496ce2418ef77314ce47240d  gdb/doc/gdb.info-6
 791f25a738dca756fa3afe22d90ea542  gdb/doc/gdb.texinfo
 553b7fe1bf4b5d8b96fdb8cd83503de1  gdb/doc/stack_frame.svg
 04c82b1da7e894a6555868e4f86225af  gdb/doc/filter-for-doxygen
 4fc43d6768cf1e2e354f31afd3977e00  gdb/doc/Doxyfile-gdb-api.in
 f7b5e594a1123b60be255ad99e1fa958  gdb/doc/annotate.info
-8e0913857779ef40ed1d5498c257c3cc  gdb/doc/gdb.info-2
+7d480acbaedbabe41e6250bb8e4edf0c  gdb/doc/gdb.info-2
 f4de6bc91bf36f24e3511b52c0cd8257  gdb/doc/refcard.tex
 6076d300a46651562d4ecd0604442414  gdb/doc/stack_frame.png
-e00692783c77d78599824a4ed944d9cb  gdb/doc/gdb.info
+db52a8a2ff92b690fdd8c1162669c7d6  gdb/doc/gdb.info
 c3871cab8ebd62f7e7243b256a86bdda  gdb/doc/python.texi
 8a4aee08d4127ecb844a633b1f871326  gdb/doc/stabs.texinfo
 88f4d48c4e659ce69a7cc639717a0527  gdb/doc/ChangeLog
-24cdf9a6cc73de1924494184c0607543  gdb/doc/gdb.1
-c9171f6385ff0516da8490fecc44e065  gdb/doc/gcore.1
+d036cab23a8c66d87b1a786de328169c  gdb/doc/gdb.1
+6d395bd926ba84a643dd7e6f86343989  gdb/doc/gcore.1
 d39233c86ed6a6dc9e853ae6a11fe03e  gdb/doc/stack_frame.pdf
 591694df493e64e682b16ffd8b2083d9  gdb/doc/Doxyfile-base.in
 66028f53511c3cc83819e12b44647ae8  gdb/doc/all-cfg.texi
 bf96494e6e4d346175babd5ef9781882  gdb/doc/gpl.texi
 cd5e3faa9bd1b684a73c7d527cdb4988  gdb/doc/filter-params.pl
 7bfdb0765c5d050d204fbb30aeeba0d8  gdb/doc/stack_frame.eps
-ffd782ebafb5f178cb4577ded6da616e  gdb/doc/gdbinit.5
+ffd886a683fb9d45a22ddf995612a161  gdb/doc/gdbinit.5
 1192f4fe7137f234e4e775edad1f6b67  gdb/doc/Doxyfile-gdb-xref.in
 3dbfac6a018cf4a1cdba9576425d37ad  gdb/doc/annotate.texinfo
 ad3c3c9a187c8d44e9afe447d27b59fc  gdb/doc/doxy-index.in
 148ac88916dea8885e5580c7a08ed2e0  gdb/doc/Doxyfile-gdbserver.in
 73ec71cd3b2e7f61bc530f19d4b35056  gdb/doc/lpsrc.sed
-f73ec814c90a4afbf25f626bcee9d6e4  gdb/parse.c
+90aa60ec368344893f0a5443e9b6a54f  gdb/parse.c
 3a25bfe2fa9f810f1e4f22912bfe56fe  gdb/fbsd-nat.c
 b3de3b9ffdd7d7abe59217d2045d0175  gdb/windows-tdep.h
-2dd63e37694a30517c1f35a72d2de7b3  gdb/stap-probe.h
+e9eda41e650968effa3ebee656b16e56  gdb/stap-probe.h
 601336088e724db50f8bc0a7dfae5f8a  gdb/observer.sh
 1f68d3272b33b380724fe731f1716f7b  gdb/ChangeLog-3.x
-81651f9910a37b79d8fb1c31f2abf1e3  gdb/language.h
+dbcf20040aeb2458d86f577156edfe0b  gdb/language.h
 b1c5ceebd4ba8fe850300f69f06535b2  gdb/tracefile.c
 b0f9af374a407a5c813d16a8ec219498  gdb/arm-bsd-tdep.c
 d8b2a9078d728afd0d8f44c48cc7c40d  gdb/mi/mi-console.c
@@ -5129,7 +5129,7 @@ d42cb76a2da9fafd7067b3f7b8c2608f  gdb/du
 717e5ac948a3c73a8422716cec5b6fb5  gdb/arm-fbsd-tdep.h
 9f5b9f6467a7f9637d414236c566d6bf  gdb/tracefile.h
 699699a3f946df32ab160f74839a08d1  gdb/sh-nbsd-nat.c
-4944b7af01b17b93d6ddb06445e5cd34  gdb/stap-probe.c
+d1039fd8311357e97acf0fc29eba20c3  gdb/stap-probe.c
 84b9ea8a2582a827121b49799394bb43  gdb/make-target-delegates
 ffc3f4d750cbe3e9486638887688537a  gdb/features/s390-linux64v1.xml
 69701d0a7c97718d55272ce8c4ed07e3  gdb/features/microblaze-with-stack-protect.c
@@ -5499,10 +5499,10 @@ d2364a105be31f01cdf5741787c965d8  gdb/co
 2cbb536ce11c51ffb746703fdf1c49b2  gdb/std-regs.c
 ebf0676f3a704787b0b07d24df62f2f4  gdb/go-lang.h
 cf150abc233098ae33cf428cf9574da8  gdb/i386-windows-nat.c
-b9eeb59a36603f4676541464690140e5  gdb/po/gdb.pot
+80eb084afdb62600039f120617b03553  gdb/po/gdb.pot
 1851bff0653201a488dcae18dde7efad  gdb/po/gdbtext
 9fa5a9cb0abe3488e3bf95b7414a7c2f  gdb/break-catch-syscall.c
-85a6a0ed7cadcc92f0125cdbdeaf7310  gdb/ada-lang.c
+08331d768183f227378b846229dcf58a  gdb/ada-lang.c
 ad0d2422dd782cdf9b19d56747627d8e  gdb/dcache.h
 fa2ac080cabd59f400eda5c3f85a31ef  gdb/system-gdbinit/elinos.py
 35011d09b0fa3f7d40c5971e32a05c65  gdb/system-gdbinit/wrs-linux.py
@@ -5512,7 +5512,7 @@ fc7cc1482b8fe3aa6325b1efc86a67b1  gdb/re
 91d5142a93c8ca1c3a5bda22c91b4d9a  gdb/gdb_wchar.h
 a06b64d3cb5f31d5732b3b586d93236c  gdb/annotate.h
 3f6a11fb93c617a251d6a4db511bb759  gdb/ppc-fbsd-tdep.h
-6ff33306303178b120897a78026261ab  gdb/parser-defs.h
+abd3b7aa71c5bf4dee175559d11fc76d  gdb/parser-defs.h
 b8d0773949588cf353912c02eb27ec89  gdb/disasm.c
 4bf4840c4ede3e48b5117827eba327eb  gdb/memattr.h
 ef8408919b14abd7c79719ffc6f67e35  gdb/moxie-tdep.h
@@ -5529,7 +5529,7 @@ b6c9a59824f661a483ea243361894279  gdb/ex
 bd0973f196c3d6eaf975553a43aacd4c  gdb/i386-fbsd-nat.c
 d3ea6767b724964cd167fceeadef6457  gdb/mipsread.c
 dd32a42e79bd9aa6a9aa4253cbc9050a  gdb/amd64-darwin-tdep.c
-c931d5681401fa902f0856dd9fe5368b  gdb/ChangeLog
+8ee8ac2cc57e9a2a84434ef841248433  gdb/ChangeLog
 e860e6934b52d9ac7114f5ff0e630993  gdb/go-typeprint.c
 f5752bfff54bbf79f47901ba6ccdcd28  gdb/score-tdep.c
 b3d86dffb92e541a1d3ac856fbb6a2b5  gdb/m88k-bsd-nat.c
@@ -5896,7 +5896,7 @@ ee580c3627976827e60c50cacc584b2c  gdb/sp
 16f727e9c06aee8d0774f39636060e70  gdb/macroexp.h
 85285f5203d664951dbd7d62e52cb9c1  gdb/m68k-linux-nat.c
 e1b562377d3ec49d8fe291a7b6e28855  gdb/arm-nbsd-tdep.c
-2d745eda9a866b7a6f49970232ce405c  gdb/rust-exp.y
+8fdff0a42cbb887d253d167f034d2286  gdb/rust-exp.y
 d8b853ba947a6f8d2f19140d18ee151c  gdb/linux-nat.c
 4a81a7aee335c532dff847e7c1738eb2  gdb/producer.h
 f55456e52866ae19cdac9c455f2ec11a  gdb/nds32-tdep.h
@@ -6262,7 +6262,7 @@ e59d02e43e1445c41e5d01d16c5b49d4  gdb/aa
 0063b64b0ff5c7d70d24078600e9b324  gdb/sparc-ravenscar-thread.c
 c3ee3c6f372fe1cd2af8671bea5d1611  gdb/ser-unix.c
 ef31f9a2077e6712e511304392f6e437  gdb/m32c-tdep.c
-c0345e17983a9ae0de2ba5eb7683a7ea  gdb/amd64-linux-tdep.c
+e98bf6c541f939c6b6fe88406b697f91  gdb/amd64-linux-tdep.c
 66992eed3d65b25ac396a0159eddc207  gdb/sparc-linux-tdep.c
 d19a5f0ec739607efbcede84e76c60fd  gdb/sparc-linux-nat.c
 659937b72651e462ab6b6c0b6838bc17  gdb/i386-fbsd-tdep.c
