public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/gdb] gdb-17.2-rebase-f44: Rebase to FSF GDB 7.10.50.20151027 (trunk snapshot).
@ 2026-06-27 23:57 Jan Kratochvil
0 siblings, 0 replies; only message in thread
From: Jan Kratochvil @ 2026-06-27 23:57 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/gdb
Branch : gdb-17.2-rebase-f44
Commit : 23f398e61a85e64e6d7f6288e7ae000db543885f
Author : Jan Kratochvil <jan.kratochvil@redhat.com>
Date : 2015-11-03T22:28:36+01:00
Stats : +1793/-3678 in 25 file(s)
URL : https://src.fedoraproject.org/rpms/gdb/c/23f398e61a85e64e6d7f6288e7ae000db543885f?branch=gdb-17.2-rebase-f44
Log:
Rebase to FSF GDB 7.10.50.20151027 (trunk snapshot).
---
diff --git a/.gitignore b/.gitignore
index fdbf4dd..d732fd4 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,2 @@
/gdb-libstdc++-v3-python-r225521.tar.xz
-/gdb-7.10.tar.xz
+/gdb-7.10.50.20151027.tar.xz
diff --git a/gdb-6.3-readnever-20050907.patch b/gdb-6.3-readnever-20050907.patch
index 8eeb59c..ef8cf51 100644
--- a/gdb-6.3-readnever-20050907.patch
+++ b/gdb-6.3-readnever-20050907.patch
@@ -11,10 +11,10 @@
* gdb.texinfo (File Options): Document --readnever.
-Index: gdb-7.9.50.20150520/gdb/doc/gdb.texinfo
+Index: gdb-7.10.50.20151022/gdb/doc/gdb.texinfo
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/doc/gdb.texinfo 2015-05-31 16:34:58.436379663 +0200
-+++ gdb-7.9.50.20150520/gdb/doc/gdb.texinfo 2015-05-31 16:35:03.452416381 +0200
+--- gdb-7.10.50.20151022.orig/gdb/doc/gdb.texinfo 2015-10-22 22:16:50.483482288 +0200
++++ gdb-7.10.50.20151022/gdb/doc/gdb.texinfo 2015-10-22 22:28:22.042554142 +0200
@@ -1032,6 +1032,12 @@ Read each symbol file's entire symbol ta
the default, which is to read it incrementally as it is needed.
This makes startup slower, but makes future operations faster.
@@ -28,10 +28,10 @@ Index: gdb-7.9.50.20150520/gdb/doc/gdb.texinfo
@end table
@node Mode Options
-Index: gdb-7.9.50.20150520/gdb/main.c
+Index: gdb-7.10.50.20151022/gdb/main.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/main.c 2015-05-31 16:34:58.439379685 +0200
-+++ gdb-7.9.50.20150520/gdb/main.c 2015-05-31 16:35:20.547541518 +0200
+--- gdb-7.10.50.20151022.orig/gdb/main.c 2015-10-22 22:16:50.485482299 +0200
++++ gdb-7.10.50.20151022/gdb/main.c 2015-10-22 22:28:22.042554142 +0200
@@ -604,6 +604,7 @@ captured_main (void *data)
{"tui", no_argument, 0, OPT_TUI},
{"dbx", no_argument, &dbx_commands, 1},
@@ -48,10 +48,10 @@ Index: gdb-7.9.50.20150520/gdb/main.c
--write Set writing into executable and core files.\n\n\
"), stream);
fputs_unfiltered (_("\
-Index: gdb-7.9.50.20150520/gdb/symfile.c
+Index: gdb-7.10.50.20151022/gdb/symfile.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/symfile.c 2015-05-31 16:34:58.440379692 +0200
-+++ gdb-7.9.50.20150520/gdb/symfile.c 2015-05-31 16:35:03.454416395 +0200
+--- gdb-7.10.50.20151022.orig/gdb/symfile.c 2015-10-22 22:16:50.486482305 +0200
++++ gdb-7.10.50.20151022/gdb/symfile.c 2015-10-22 22:28:22.043554148 +0200
@@ -80,6 +80,7 @@ static void clear_symtab_users_cleanup (
/* Global variables owned by this file. */
@@ -60,33 +60,33 @@ Index: gdb-7.9.50.20150520/gdb/symfile.c
/* Functions this file defines. */
-Index: gdb-7.9.50.20150520/gdb/dwarf2read.c
+Index: gdb-7.10.50.20151022/gdb/dwarf2read.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/dwarf2read.c 2015-05-31 16:34:58.446379736 +0200
-+++ gdb-7.9.50.20150520/gdb/dwarf2read.c 2015-05-31 16:35:03.459416432 +0200
-@@ -69,6 +69,7 @@
- #include "source.h"
+--- gdb-7.10.50.20151022.orig/gdb/dwarf2read.c 2015-10-22 22:28:22.046554165 +0200
++++ gdb-7.10.50.20151022/gdb/dwarf2read.c 2015-10-22 22:29:17.664881642 +0200
+@@ -70,6 +70,7 @@
#include "filestuff.h"
#include "build-id.h"
+ #include "namespace.h"
+#include "top.h"
#include <fcntl.h>
#include <sys/types.h>
-@@ -2050,7 +2051,8 @@ dwarf2_has_info (struct objfile *objfile
+@@ -2059,7 +2060,8 @@ dwarf2_has_info (struct objfile *objfile
(void *) names);
dwarf2_per_objfile->objfile = objfile;
}
- return (!dwarf2_per_objfile->info.is_virtual
+ return !readnever_symbol_files &&
+ (!dwarf2_per_objfile->info.is_virtual
- && dwarf2_per_objfile->info.s.asection != NULL
+ && dwarf2_per_objfile->info.s.section != NULL
&& !dwarf2_per_objfile->abbrev.is_virtual
- && dwarf2_per_objfile->abbrev.s.asection != NULL);
-Index: gdb-7.9.50.20150520/gdb/top.h
+ && dwarf2_per_objfile->abbrev.s.section != NULL);
+Index: gdb-7.10.50.20151022/gdb/top.h
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/top.h 2015-05-31 16:34:58.448379751 +0200
-+++ gdb-7.9.50.20150520/gdb/top.h 2015-05-31 16:35:03.459416432 +0200
-@@ -67,6 +67,7 @@ extern void set_prompt (const char *s);
+--- gdb-7.10.50.20151022.orig/gdb/top.h 2015-10-22 22:16:50.490482329 +0200
++++ gdb-7.10.50.20151022/gdb/top.h 2015-10-22 22:28:22.047554171 +0200
+@@ -74,6 +74,7 @@ extern int gdb_in_secondary_prompt_p (vo
/* From random places. */
extern int readnow_symbol_files;
diff --git a/gdb-6.6-buildid-locate.patch b/gdb-6.6-buildid-locate.patch
index dc05c39..679c0f5 100644
--- a/gdb-6.6-buildid-locate.patch
+++ b/gdb-6.6-buildid-locate.patch
@@ -1,7 +1,7 @@
-Index: gdb-7.9.90.20150709/gdb/corelow.c
+Index: gdb-7.10.50.20151022/gdb/corelow.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/corelow.c 2015-07-09 22:05:20.988044312 +0200
-+++ gdb-7.9.90.20150709/gdb/corelow.c 2015-07-09 22:05:42.057222722 +0200
+--- gdb-7.10.50.20151022.orig/gdb/corelow.c 2015-10-22 22:30:46.226403087 +0200
++++ gdb-7.10.50.20151022/gdb/corelow.c 2015-10-22 22:30:49.266420986 +0200
@@ -45,6 +45,10 @@
#include "gdb_bfd.h"
#include "completer.h"
@@ -94,11 +94,11 @@ Index: gdb-7.9.90.20150709/gdb/corelow.c
+ NULL, NULL, NULL,
+ &setlist, &showlist);
}
-Index: gdb-7.9.90.20150709/gdb/doc/gdb.texinfo
+Index: gdb-7.10.50.20151022/gdb/doc/gdb.texinfo
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/doc/gdb.texinfo 2015-07-09 22:05:20.988044312 +0200
-+++ gdb-7.9.90.20150709/gdb/doc/gdb.texinfo 2015-07-09 22:05:42.067222806 +0200
-@@ -18304,6 +18304,27 @@ information files.
+--- gdb-7.10.50.20151022.orig/gdb/doc/gdb.texinfo 2015-10-22 22:30:46.233403128 +0200
++++ gdb-7.10.50.20151022/gdb/doc/gdb.texinfo 2015-10-22 22:30:49.271421015 +0200
+@@ -18495,6 +18495,27 @@ information files.
@end table
@@ -126,10 +126,10 @@ Index: gdb-7.9.90.20150709/gdb/doc/gdb.texinfo
@cindex @code{.gnu_debuglink} sections
@cindex debug link sections
A debug link is a special section of the executable file named
-Index: gdb-7.9.90.20150709/gdb/solib-svr4.c
+Index: gdb-7.10.50.20151022/gdb/solib-svr4.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/solib-svr4.c 2015-07-09 22:05:20.988044312 +0200
-+++ gdb-7.9.90.20150709/gdb/solib-svr4.c 2015-07-09 22:05:42.068222815 +0200
+--- gdb-7.10.50.20151022.orig/gdb/solib-svr4.c 2015-10-22 22:30:46.235403140 +0200
++++ gdb-7.10.50.20151022/gdb/solib-svr4.c 2015-10-22 22:30:49.272421021 +0200
@@ -45,6 +45,7 @@
#include "auxv.h"
#include "gdb_bfd.h"
@@ -138,7 +138,7 @@ Index: gdb-7.9.90.20150709/gdb/solib-svr4.c
static struct link_map_offsets *svr4_fetch_link_map_offsets (void);
static int svr4_have_link_map_offsets (void);
-@@ -1379,9 +1380,52 @@ svr4_read_so_list (CORE_ADDR lm, CORE_AD
+@@ -1416,9 +1417,52 @@ svr4_read_so_list (CORE_ADDR lm, CORE_AD
continue;
}
@@ -194,11 +194,11 @@ Index: gdb-7.9.90.20150709/gdb/solib-svr4.c
xfree (buffer);
/* If this entry has no name, or its name matches the name
-Index: gdb-7.9.90.20150709/gdb/elfread.c
+Index: gdb-7.10.50.20151022/gdb/elfread.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/elfread.c 2015-07-09 22:05:20.988044312 +0200
-+++ gdb-7.9.90.20150709/gdb/elfread.c 2015-07-09 22:05:42.068222815 +0200
-@@ -1250,9 +1250,10 @@ elf_symfile_read (struct objfile *objfil
+--- gdb-7.10.50.20151022.orig/gdb/elfread.c 2015-10-22 22:30:46.235403140 +0200
++++ gdb-7.10.50.20151022/gdb/elfread.c 2015-10-22 22:30:49.272421021 +0200
+@@ -1259,9 +1259,10 @@ elf_symfile_read (struct objfile *objfil
&& objfile->separate_debug_objfile == NULL
&& objfile->separate_debug_objfile_backlink == NULL)
{
@@ -211,7 +211,7 @@ Index: gdb-7.9.90.20150709/gdb/elfread.c
if (debugfile == NULL)
debugfile = find_separate_debug_file_by_debuglink (objfile);
-@@ -1266,6 +1267,12 @@ elf_symfile_read (struct objfile *objfil
+@@ -1275,6 +1276,12 @@ elf_symfile_read (struct objfile *objfil
symbol_file_add_separate (abfd, debugfile, symfile_flags, objfile);
do_cleanups (cleanup);
}
@@ -224,10 +224,10 @@ Index: gdb-7.9.90.20150709/gdb/elfread.c
}
}
-Index: gdb-7.9.90.20150709/gdb/symfile.h
+Index: gdb-7.10.50.20151022/gdb/symfile.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/symfile.h 2015-07-09 22:05:20.988044312 +0200
-+++ gdb-7.9.90.20150709/gdb/symfile.h 2015-07-09 22:05:42.068222815 +0200
+--- gdb-7.10.50.20151022.orig/gdb/symfile.h 2015-10-22 22:30:46.236403145 +0200
++++ gdb-7.10.50.20151022/gdb/symfile.h 2015-10-22 22:30:49.273421027 +0200
@@ -584,6 +584,10 @@ void expand_symtabs_matching (expand_sym
void map_symbol_filenames (symbol_filename_ftype *fun, void *data,
int need_fullname);
@@ -239,11 +239,11 @@ Index: gdb-7.9.90.20150709/gdb/symfile.h
/* From dwarf2read.c */
/* Names for a dwarf2 debugging section. The field NORMAL is the normal
-Index: gdb-7.9.90.20150709/gdb/testsuite/lib/gdb.exp
+Index: gdb-7.10.50.20151022/gdb/testsuite/lib/gdb.exp
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/testsuite/lib/gdb.exp 2015-07-09 22:05:20.988044312 +0200
-+++ gdb-7.9.90.20150709/gdb/testsuite/lib/gdb.exp 2015-07-09 22:05:42.070222832 +0200
-@@ -1573,6 +1573,16 @@ proc default_gdb_start { } {
+--- gdb-7.10.50.20151022.orig/gdb/testsuite/lib/gdb.exp 2015-10-22 22:30:46.237403151 +0200
++++ gdb-7.10.50.20151022/gdb/testsuite/lib/gdb.exp 2015-10-22 22:30:49.273421027 +0200
+@@ -1640,6 +1640,16 @@ proc default_gdb_start { } {
warning "Couldn't set the width to 0."
}
}
@@ -260,11 +260,11 @@ Index: gdb-7.9.90.20150709/gdb/testsuite/lib/gdb.exp
return 0
}
-Index: gdb-7.9.90.20150709/gdb/testsuite/lib/mi-support.exp
+Index: gdb-7.10.50.20151022/gdb/testsuite/lib/mi-support.exp
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/testsuite/lib/mi-support.exp 2015-07-09 22:05:20.988044312 +0200
-+++ gdb-7.9.90.20150709/gdb/testsuite/lib/mi-support.exp 2015-07-09 22:05:42.070222832 +0200
-@@ -214,6 +214,16 @@ proc default_mi_gdb_start { args } {
+--- gdb-7.10.50.20151022.orig/gdb/testsuite/lib/mi-support.exp 2015-10-22 22:30:49.274421033 +0200
++++ gdb-7.10.50.20151022/gdb/testsuite/lib/mi-support.exp 2015-10-22 22:31:24.869631575 +0200
+@@ -204,6 +204,16 @@ proc default_mi_gdb_start { args } {
warning "Couldn't set the width to 0."
}
}
@@ -278,14 +278,14 @@ Index: gdb-7.9.90.20150709/gdb/testsuite/lib/mi-support.exp
+ warning "Could not disable the missing debug infos warnings.."
+ }
+ }
- # If allowing the inferior to have its own PTY then assign the inferior
- # its own terminal device here.
+
+ # Create the new PTY for the inferior process.
if { $separate_inferior_pty } {
-Index: gdb-7.9.90.20150709/gdb/objfiles.h
+Index: gdb-7.10.50.20151022/gdb/objfiles.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/objfiles.h 2015-07-09 22:05:20.988044312 +0200
-+++ gdb-7.9.90.20150709/gdb/objfiles.h 2015-07-09 22:05:42.071222840 +0200
-@@ -459,6 +459,10 @@ struct objfile
+--- gdb-7.10.50.20151022.orig/gdb/objfiles.h 2015-10-22 22:30:46.238403157 +0200
++++ gdb-7.10.50.20151022/gdb/objfiles.h 2015-10-22 22:30:49.274421033 +0200
+@@ -489,6 +489,10 @@ struct objfile
#define OBJF_NOT_FILENAME (1 << 6)
@@ -296,10 +296,10 @@ Index: gdb-7.9.90.20150709/gdb/objfiles.h
/* Declarations for functions defined in objfiles.c */
extern struct objfile *allocate_objfile (bfd *, const char *name, int);
-Index: gdb-7.9.90.20150709/gdb/testsuite/gdb.base/corefile.exp
+Index: gdb-7.10.50.20151022/gdb/testsuite/gdb.base/corefile.exp
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/testsuite/gdb.base/corefile.exp 2015-07-09 22:05:20.988044312 +0200
-+++ gdb-7.9.90.20150709/gdb/testsuite/gdb.base/corefile.exp 2015-07-09 22:05:42.071222840 +0200
+--- gdb-7.10.50.20151022.orig/gdb/testsuite/gdb.base/corefile.exp 2015-10-22 22:30:46.238403157 +0200
++++ gdb-7.10.50.20151022/gdb/testsuite/gdb.base/corefile.exp 2015-10-22 22:30:49.274421033 +0200
@@ -293,3 +293,33 @@ gdb_test_multiple "core-file $corefile"
pass $test
}
@@ -334,10 +334,10 @@ Index: gdb-7.9.90.20150709/gdb/testsuite/gdb.base/corefile.exp
+ gdb_test "info files" "Local exec file:\r\n\[ \t\]*`[string_to_regexp $debugdir/$buildid]', file type .*"
+ pass $wholetest
+}
-Index: gdb-7.9.90.20150709/gdb/build-id.c
+Index: gdb-7.10.50.20151022/gdb/build-id.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/build-id.c 2015-07-09 22:05:20.988044312 +0200
-+++ gdb-7.9.90.20150709/gdb/build-id.c 2015-07-09 22:19:35.022957009 +0200
+--- gdb-7.10.50.20151022.orig/gdb/build-id.c 2015-10-22 22:30:46.238403157 +0200
++++ gdb-7.10.50.20151022/gdb/build-id.c 2015-10-22 22:34:36.579774662 +0200
@@ -26,11 +26,67 @@
#include "objfiles.h"
#include "filenames.h"
@@ -765,7 +765,7 @@ Index: gdb-7.9.90.20150709/gdb/build-id.c
if (found == NULL)
warning (_("File \"%s\" has no build-id, file skipped"),
-@@ -65,20 +463,56 @@ build_id_verify (bfd *abfd, size_t check
+@@ -65,23 +463,56 @@ build_id_verify (bfd *abfd, size_t check
return retval;
}
@@ -818,15 +818,18 @@ Index: gdb-7.9.90.20150709/gdb/build-id.c
struct cleanup *back_to;
int ix;
bfd *abfd = NULL;
+- int alloc_len;
/* DEBUG_FILE_DIRECTORY/.build-id/ab/cdef */
-- link = alloca (strlen (debug_file_directory) + (sizeof "/.build-id/" - 1) + 1
-- + 2 * build_id_len + (sizeof ".debug" - 1) + 1);
+- alloc_len = (strlen (debug_file_directory)
+- + (sizeof "/.build-id/" - 1) + 1
+- + 2 * build_id_len + (sizeof ".debug" - 1) + 1);
+- link = (char *) alloca (alloc_len);
+ link = xmalloc (strlen (debug_file_directory) + 2 * build_id_len + 50);
/* Keep backward compatibility so that DEBUG_FILE_DIRECTORY being "" will
cause "/.build-id/..." lookups. */
-@@ -91,9 +525,12 @@ build_id_to_debug_bfd (size_t build_id_l
+@@ -94,9 +525,12 @@ build_id_to_debug_bfd (size_t build_id_l
size_t debugdir_len = strlen (debugdir);
const gdb_byte *data = build_id;
size_t size = build_id_len;
@@ -840,7 +843,7 @@ Index: gdb-7.9.90.20150709/gdb/build-id.c
memcpy (link, debugdir, debugdir_len);
s = &link[debugdir_len];
-@@ -107,47 +544,281 @@ build_id_to_debug_bfd (size_t build_id_l
+@@ -110,47 +544,281 @@ build_id_to_debug_bfd (size_t build_id_l
*s++ = '/';
while (size-- > 0)
s += sprintf (s, "%02x", (unsigned) *data++);
@@ -1141,7 +1144,7 @@ Index: gdb-7.9.90.20150709/gdb/build-id.c
/* Prevent looping on a stripped .debug file. */
if (abfd != NULL
&& filename_cmp (bfd_get_filename (abfd),
-@@ -167,3 +838,21 @@ find_separate_debug_file_by_buildid (str
+@@ -170,3 +838,21 @@ find_separate_debug_file_by_buildid (str
}
return NULL;
}
@@ -1163,10 +1166,10 @@ Index: gdb-7.9.90.20150709/gdb/build-id.c
+
+ observer_attach_executable_changed (debug_print_executable_changed);
+}
-Index: gdb-7.9.90.20150709/gdb/build-id.h
+Index: gdb-7.10.50.20151022/gdb/build-id.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/build-id.h 2015-07-09 22:05:20.988044312 +0200
-+++ gdb-7.9.90.20150709/gdb/build-id.h 2015-07-09 22:05:42.072222849 +0200
+--- gdb-7.10.50.20151022.orig/gdb/build-id.h 2015-10-22 22:30:46.239403163 +0200
++++ gdb-7.10.50.20151022/gdb/build-id.h 2015-10-22 22:30:49.275421039 +0200
@@ -20,9 +20,10 @@
#ifndef BUILD_ID_H
#define BUILD_ID_H
@@ -1201,11 +1204,11 @@ Index: gdb-7.9.90.20150709/gdb/build-id.h
+ char **build_id_filename_return);
#endif /* BUILD_ID_H */
-Index: gdb-7.9.90.20150709/gdb/dwarf2read.c
+Index: gdb-7.10.50.20151022/gdb/dwarf2read.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/dwarf2read.c 2015-07-09 22:05:20.988044312 +0200
-+++ gdb-7.9.90.20150709/gdb/dwarf2read.c 2015-07-09 22:05:42.077222891 +0200
-@@ -2507,7 +2507,7 @@ dwarf2_get_dwz_file (void)
+--- gdb-7.10.50.20151022.orig/gdb/dwarf2read.c 2015-10-22 22:30:46.242403181 +0200
++++ gdb-7.10.50.20151022/gdb/dwarf2read.c 2015-10-22 22:30:49.278421057 +0200
+@@ -2514,7 +2514,7 @@ dwarf2_get_dwz_file (void)
}
if (dwz_bfd == NULL)
@@ -1214,10 +1217,10 @@ Index: gdb-7.9.90.20150709/gdb/dwarf2read.c
if (dwz_bfd == NULL)
error (_("could not find '.gnu_debugaltlink' file for %s"),
-Index: gdb-7.9.90.20150709/gdb/python/py-objfile.c
+Index: gdb-7.10.50.20151022/gdb/python/py-objfile.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/python/py-objfile.c 2015-07-09 22:05:20.988044312 +0200
-+++ gdb-7.9.90.20150709/gdb/python/py-objfile.c 2015-07-09 22:05:42.077222891 +0200
+--- gdb-7.10.50.20151022.orig/gdb/python/py-objfile.c 2015-10-22 22:30:46.243403187 +0200
++++ gdb-7.10.50.20151022/gdb/python/py-objfile.c 2015-10-22 22:30:49.278421057 +0200
@@ -139,7 +139,7 @@ objfpy_get_build_id (PyObject *self, voi
TRY
@@ -1236,10 +1239,10 @@ Index: gdb-7.9.90.20150709/gdb/python/py-objfile.c
if (obfd_build_id == NULL)
continue;
if (objfpy_build_id_matches (obfd_build_id, build_id))
-Index: gdb-7.9.90.20150709/gdb/coffread.c
+Index: gdb-7.10.50.20151022/gdb/coffread.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/coffread.c 2015-07-09 22:05:20.988044312 +0200
-+++ gdb-7.9.90.20150709/gdb/coffread.c 2015-07-09 22:05:42.078222899 +0200
+--- gdb-7.10.50.20151022.orig/gdb/coffread.c 2015-10-22 22:30:46.244403193 +0200
++++ gdb-7.10.50.20151022/gdb/coffread.c 2015-10-22 22:30:49.278421057 +0200
@@ -739,7 +739,7 @@ coff_symfile_read (struct objfile *objfi
{
char *debugfile;
diff --git a/gdb-6.6-bz235197-fork-detach-info.patch b/gdb-6.6-bz235197-fork-detach-info.patch
index 26c928d..d131580 100644
--- a/gdb-6.6-bz235197-fork-detach-info.patch
+++ b/gdb-6.6-bz235197-fork-detach-info.patch
@@ -3,10 +3,10 @@
Port to GDB-6.8pre.
Remove the `[' character from the GDB-6.8 default message.
-Index: gdb-7.9.50.20150531/gdb/testsuite/gdb.base/fork-detach.c
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.base/fork-detach.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150531/gdb/testsuite/gdb.base/fork-detach.c 2015-05-31 18:23:49.008450716 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.base/fork-detach.c 2015-10-27 22:38:46.693459569 +0100
@@ -0,0 +1,57 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@@ -65,10 +65,10 @@ Index: gdb-7.9.50.20150531/gdb/testsuite/gdb.base/fork-detach.c
+ }
+ return 0;
+}
-Index: gdb-7.9.50.20150531/gdb/testsuite/gdb.base/fork-detach.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.base/fork-detach.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150531/gdb/testsuite/gdb.base/fork-detach.exp 2015-05-31 18:23:49.008450716 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.base/fork-detach.exp 2015-10-27 22:38:46.693459569 +0100
@@ -0,0 +1,36 @@
+# Copyright 2007 Free Software Foundation, Inc.
+
@@ -106,11 +106,11 @@ Index: gdb-7.9.50.20150531/gdb/testsuite/gdb.base/fork-detach.exp
+gdb_test "" \
+ "Detaching after fork from child process.*\\\[Inferior .* exited normally\\\]" \
+ "Info message caught"
-Index: gdb-7.9.50.20150531/gdb/infrun.c
+Index: gdb-7.10.50.20151027/gdb/infrun.c
===================================================================
---- gdb-7.9.50.20150531.orig/gdb/infrun.c 2015-05-31 18:23:41.703405617 +0200
-+++ gdb-7.9.50.20150531/gdb/infrun.c 2015-05-31 18:23:49.011450735 +0200
-@@ -443,7 +443,7 @@ holding the child stopped. Try \"set de
+--- gdb-7.10.50.20151027.orig/gdb/infrun.c 2015-10-27 22:38:34.333386939 +0100
++++ gdb-7.10.50.20151027/gdb/infrun.c 2015-10-27 22:38:46.695459581 +0100
+@@ -477,7 +477,7 @@ holding the child stopped. Try \"set de
remove_breakpoints_pid (ptid_get_pid (inferior_ptid));
}
@@ -119,3 +119,25 @@ Index: gdb-7.9.50.20150531/gdb/infrun.c
{
/* Ensure that we have a process ptid. */
ptid_t process_ptid = pid_to_ptid (ptid_get_pid (child_ptid));
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.base/catch-syscall.exp
+===================================================================
+--- gdb-7.10.50.20151027.orig/gdb/testsuite/gdb.base/catch-syscall.exp 2015-10-27 22:43:47.015224320 +0100
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.base/catch-syscall.exp 2015-10-27 22:44:29.327472955 +0100
+@@ -165,7 +165,7 @@ proc check_for_program_end {} {
+ # Deleting the catchpoints
+ delete_breakpoints
+
+- gdb_continue_to_end
++ gdb_continue_to_end "" continue 1
+ }
+
+ proc test_catch_syscall_without_args {} {
+@@ -236,7 +236,7 @@ proc test_catch_syscall_with_wrong_args
+ # If it doesn't, everything is right (since we don't have
+ # a syscall named "mlock" in it). Otherwise, this is a failure.
+ set thistest "catch syscall with unused syscall ($syscall_name)"
+- gdb_continue_to_end $thistest
++ gdb_continue_to_end $thistest continue 1
+ }
+ }
+
diff --git a/gdb-6.6-scheduler_locking-step-is-default.patch b/gdb-6.6-scheduler_locking-step-is-default.patch
index e8e0595..4967b92 100644
--- a/gdb-6.6-scheduler_locking-step-is-default.patch
+++ b/gdb-6.6-scheduler_locking-step-is-default.patch
@@ -1,21 +1,21 @@
-Index: gdb-7.7.50.20140609/gdb/infrun.c
+Index: gdb-7.10.50.20151022/gdb/infrun.c
===================================================================
---- gdb-7.7.50.20140609.orig/gdb/infrun.c 2014-06-13 20:08:51.225699203 +0200
-+++ gdb-7.7.50.20140609/gdb/infrun.c 2014-06-13 20:08:55.515703466 +0200
-@@ -1661,7 +1661,7 @@ static const char *const scheduler_enums
- schedlock_step,
+--- gdb-7.10.50.20151022.orig/gdb/infrun.c 2015-10-22 22:30:15.887224452 +0200
++++ gdb-7.10.50.20151022/gdb/infrun.c 2015-10-22 22:30:25.742282478 +0200
+@@ -2175,7 +2175,7 @@ static const char *const scheduler_enums
+ schedlock_replay,
NULL
};
--static const char *scheduler_mode = schedlock_off;
+-static const char *scheduler_mode = schedlock_replay;
+static const char *scheduler_mode = schedlock_step;
static void
show_scheduler_mode (struct ui_file *file, int from_tty,
struct cmd_list_element *c, const char *value)
-Index: gdb-7.7.50.20140609/gdb/testsuite/gdb.mi/mi-cli.exp
+Index: gdb-7.10.50.20151022/gdb/testsuite/gdb.mi/mi-cli.exp
===================================================================
---- gdb-7.7.50.20140609.orig/gdb/testsuite/gdb.mi/mi-cli.exp 2014-06-13 20:08:55.515703466 +0200
-+++ gdb-7.7.50.20140609/gdb/testsuite/gdb.mi/mi-cli.exp 2014-06-13 20:09:24.862732832 +0200
-@@ -181,7 +181,7 @@ mi_expect_stop "breakpoint-hit" "main" "
+--- gdb-7.10.50.20151022.orig/gdb/testsuite/gdb.mi/mi-cli.exp 2015-10-22 22:29:38.352003447 +0200
++++ gdb-7.10.50.20151022/gdb/testsuite/gdb.mi/mi-cli.exp 2015-10-22 22:30:15.888224458 +0200
+@@ -199,7 +199,7 @@ mi_expect_stop "breakpoint-hit" "main" "
# Test that the token is output even for CLI commands
# Also test that *stopped includes frame information.
mi_gdb_test "34 next" \
@@ -24,10 +24,10 @@ Index: gdb-7.7.50.20140609/gdb/testsuite/gdb.mi/mi-cli.exp
"34 next: run"
# Test that the new current source line is output to the console
-Index: gdb-7.7.50.20140609/gdb/testsuite/gdb.mi/mi-logging.exp
+Index: gdb-7.10.50.20151022/gdb/testsuite/gdb.mi/mi-logging.exp
===================================================================
---- gdb-7.7.50.20140609.orig/gdb/testsuite/gdb.mi/mi-logging.exp 2014-06-13 20:08:51.227699205 +0200
-+++ gdb-7.7.50.20140609/gdb/testsuite/gdb.mi/mi-logging.exp 2014-06-13 20:08:55.516703467 +0200
+--- gdb-7.10.50.20151022.orig/gdb/testsuite/gdb.mi/mi-logging.exp 2015-10-22 22:29:38.352003447 +0200
++++ gdb-7.10.50.20151022/gdb/testsuite/gdb.mi/mi-logging.exp 2015-10-22 22:30:15.888224458 +0200
@@ -53,7 +53,7 @@ close $chan
set mi_log_prompt "\[(\]gdb\[)\] \[\r\n\]+"
@@ -46,10 +46,10 @@ Index: gdb-7.7.50.20140609/gdb/testsuite/gdb.mi/mi-logging.exp
pass "Redirect log file contents"
} else {
fail "Redirect log file contents"
-Index: gdb-7.7.50.20140609/gdb/testsuite/gdb.mi/mi-console.exp
+Index: gdb-7.10.50.20151022/gdb/testsuite/gdb.mi/mi-console.exp
===================================================================
---- gdb-7.7.50.20140609.orig/gdb/testsuite/gdb.mi/mi-console.exp 2014-06-13 20:08:51.227699205 +0200
-+++ gdb-7.7.50.20140609/gdb/testsuite/gdb.mi/mi-console.exp 2014-06-13 20:08:55.516703467 +0200
+--- gdb-7.10.50.20151022.orig/gdb/testsuite/gdb.mi/mi-console.exp 2015-10-22 22:29:38.353003453 +0200
++++ gdb-7.10.50.20151022/gdb/testsuite/gdb.mi/mi-console.exp 2015-10-22 22:30:15.888224458 +0200
@@ -60,6 +60,9 @@ if { [gdb_compile "${srcdir}/${subdir}/
mi_run_to_main
diff --git a/gdb-archer-vla-tests.patch b/gdb-archer-vla-tests.patch
index d0fd183..556f9d1 100644
--- a/gdb-archer-vla-tests.patch
+++ b/gdb-archer-vla-tests.patch
@@ -1,7 +1,7 @@
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.ada/packed_array.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.ada/packed_array.exp
===================================================================
---- gdb-7.7.90.20140613.orig/gdb/testsuite/gdb.ada/packed_array.exp 2014-06-13 03:59:37.000000000 +0200
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.ada/packed_array.exp 2014-06-16 23:30:30.107940483 +0200
+--- gdb-7.10.50.20151027.orig/gdb/testsuite/gdb.ada/packed_array.exp 2015-10-27 02:48:32.000000000 +0100
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.ada/packed_array.exp 2015-11-03 22:23:27.212877605 +0100
@@ -56,5 +56,11 @@ gdb_test_multiple "$test" "$test" {
# are. Observed with (FSF GNU Ada 4.5.3 20110124).
xfail $test
@@ -14,10 +14,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.ada/packed_array.exp
+ }
}
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.arch/x86_64-vla-typedef-foo.S
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.arch/x86_64-vla-typedef-foo.S
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.arch/x86_64-vla-typedef-foo.S 2014-06-16 23:30:30.108940484 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.arch/x86_64-vla-typedef-foo.S 2015-11-03 22:23:27.212877605 +0100
@@ -0,0 +1,455 @@
+ .file "x86_64-vla-typedef.c"
+ .section .debug_abbrev,"",@progbits
@@ -474,10 +474,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.arch/x86_64-vla-typedef-foo.S
+ .string "GNU C 4.3.2 20081105 (Red Hat 4.3.2-7)"
+ .ident "GCC: (GNU) 4.3.2 20081105 (Red Hat 4.3.2-7)"
+ .section .note.GNU-stack,"",@progbits
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.arch/x86_64-vla-typedef.c
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.arch/x86_64-vla-typedef.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.arch/x86_64-vla-typedef.c 2014-06-16 23:30:30.109940484 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.arch/x86_64-vla-typedef.c 2015-11-03 22:23:27.213877611 +0100
@@ -0,0 +1,43 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@@ -522,10 +522,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.arch/x86_64-vla-typedef.c
+}
+
+#endif
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.arch/x86_64-vla-typedef.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.arch/x86_64-vla-typedef.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.arch/x86_64-vla-typedef.exp 2014-06-16 23:30:30.109940484 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.arch/x86_64-vla-typedef.exp 2015-11-03 22:23:27.213877611 +0100
@@ -0,0 +1,64 @@
+# Copyright 2009 Free Software Foundation, Inc.
+
@@ -591,10 +591,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.arch/x86_64-vla-typedef.exp
+gdb_test "whatis array" "type = array_t" "second: whatis array"
+
+gdb_test "ptype array" "type = char \\\[78\\\]" "second: ptype array"
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/arrayidx.c
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.base/arrayidx.c
===================================================================
---- gdb-7.7.90.20140613.orig/gdb/testsuite/gdb.base/arrayidx.c 2014-06-13 03:59:37.000000000 +0200
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.base/arrayidx.c 2014-06-16 23:30:30.109940484 +0200
+--- gdb-7.10.50.20151027.orig/gdb/testsuite/gdb.base/arrayidx.c 2015-10-27 02:48:32.000000000 +0100
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.base/arrayidx.c 2015-11-03 22:23:27.213877611 +0100
@@ -17,6 +17,13 @@
int array[] = {1, 2, 3, 4};
@@ -609,10 +609,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/arrayidx.c
int
main (void)
{
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/arrayidx.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.base/arrayidx.exp
===================================================================
---- gdb-7.7.90.20140613.orig/gdb/testsuite/gdb.base/arrayidx.exp 2014-06-13 03:59:37.000000000 +0200
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.base/arrayidx.exp 2014-06-16 23:30:30.109940484 +0200
+--- gdb-7.10.50.20151027.orig/gdb/testsuite/gdb.base/arrayidx.exp 2015-10-27 02:48:32.000000000 +0100
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.base/arrayidx.exp 2015-11-03 22:23:27.213877611 +0100
@@ -49,4 +49,12 @@ gdb_test "print array" \
"\\{\\\[0\\\] = 1, \\\[1\\\] = 2, \\\[2\\\] = 3, \\\[3\\\] = 4\\}" \
"Print array with array-indexes on"
@@ -627,10 +627,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/arrayidx.exp
+ unsupported "$test (no GCC)"
+ }
+}
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/internal-var-field-address.c
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.base/internal-var-field-address.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.base/internal-var-field-address.c 2014-06-16 23:30:30.109940484 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.base/internal-var-field-address.c 2015-11-03 22:23:27.213877611 +0100
@@ -0,0 +1,20 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@@ -652,10 +652,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/internal-var-field-address.c
+struct {
+ int field;
+} staticstruct = { 1 };
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/internal-var-field-address.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.base/internal-var-field-address.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.base/internal-var-field-address.exp 2014-06-16 23:30:30.109940484 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.base/internal-var-field-address.exp 2015-11-03 22:23:27.213877611 +0100
@@ -0,0 +1,26 @@
+# Copyright 2009 Free Software Foundation, Inc.
+
@@ -683,10 +683,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/internal-var-field-address.exp
+
+gdb_test {set $varstruct = staticstruct}
+gdb_test {p $varstruct.field} " = 1"
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/vla-frame.c
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.base/vla-frame.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.base/vla-frame.c 2014-06-16 23:30:30.110940485 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.base/vla-frame.c 2015-11-03 22:23:27.213877611 +0100
@@ -0,0 +1,31 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@@ -719,10 +719,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/vla-frame.c
+ f (s);
+ return 0;
+}
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/vla-frame.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.base/vla-frame.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.base/vla-frame.exp 2014-06-16 23:30:30.110940485 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.base/vla-frame.exp 2015-11-03 22:23:27.213877611 +0100
@@ -0,0 +1,38 @@
+# Copyright 2011 Free Software Foundation, Inc.
+#
@@ -762,10 +762,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/vla-frame.exp
+}
+
+gdb_test "bt full" "\r\n +s = \"X\\\\000\"\r\n.*"
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/vla-overflow.c
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.base/vla-overflow.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.base/vla-overflow.c 2014-06-16 23:30:30.110940485 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.base/vla-overflow.c 2015-11-03 22:23:27.213877611 +0100
@@ -0,0 +1,30 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@@ -797,10 +797,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/vla-overflow.c
+
+ return 0;
+}
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/vla-overflow.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.base/vla-overflow.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.base/vla-overflow.exp 2014-06-16 23:30:30.110940485 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.base/vla-overflow.exp 2015-11-03 22:23:27.213877611 +0100
@@ -0,0 +1,109 @@
+# Copyright 2008 Free Software Foundation, Inc.
+
@@ -911,10 +911,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/vla-overflow.exp
+gdb_test "bt" "in \[^ \]*abort \\(.* in main \\(.*" "Backtrace after abort()"
+
+verbose -log "kb_found in bt after abort() = [expr [memory_v_pages_get] * $pagesize / 1024]"
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/vla.c
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.base/vla.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.base/vla.c 2014-06-16 23:30:30.110940485 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.base/vla.c 2015-11-03 22:23:27.213877611 +0100
@@ -0,0 +1,55 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@@ -971,10 +971,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/vla.c
+ foo (78);
+ return 0;
+}
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/vla.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.base/vla.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.base/vla.exp 2014-06-16 23:30:30.110940485 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.base/vla.exp 2015-11-03 22:23:27.214877617 +0100
@@ -0,0 +1,62 @@
+# Copyright 2008 Free Software Foundation, Inc.
+
@@ -1038,10 +1038,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.base/vla.exp
+gdb_test "p temp1" " = '1' <repeats 78 times>" "second: print temp1"
+gdb_test "p temp2" " = '2' <repeats 78 times>" "second: print temp2"
+gdb_test "p temp3" " = '3' <repeats 48 times>" "second: print temp3"
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-bound-loclist.S
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.dwarf2/dw2-bound-loclist.S
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-bound-loclist.S 2014-06-16 23:30:30.111940487 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.dwarf2/dw2-bound-loclist.S 2015-11-03 22:23:27.214877617 +0100
@@ -0,0 +1,246 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@@ -1289,11 +1289,11 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-bound-loclist.S
+ .string "char"
+.Luint_str:
+ .string "unsigned int"
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-bound-loclist.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.dwarf2/dw2-bound-loclist.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-bound-loclist.exp 2014-06-16 23:30:30.111940487 +0200
-@@ -0,0 +1,63 @@
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.dwarf2/dw2-bound-loclist.exp 2015-11-03 22:23:27.214877617 +0100
+@@ -0,0 +1,66 @@
+# Copyright 2010 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
@@ -1332,17 +1332,20 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-bound-loclist.exp
+
+# Verify it behaves at least as an unbound array without inferior.
+
-+set test "p a_string"
-+gdb_test_multiple $test $test {
-+ -re " = 0x\[0-9a-f\]+ \"seennotseen\"\r\n$gdb_prompt $" {
-+ pass $test
-+ }
-+ -re "No registers\\.\r\n$gdb_prompt $" {
-+ kfail "vlaregression" $test
-+ }
-+}
-+
-+gdb_test "ptype a_string" {type = char \[variable length\]}
++# FIXME: FSF GDB crashes due to !has_stack_frames ().
++# But in practice that should not happen.
++# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=43762
++#set test "p a_string"
++#gdb_test_multiple $test $test {
++# -re " = 0x\[0-9a-f\]+ \"seennotseen\"\r\n$gdb_prompt $" {
++# pass $test
++# }
++# -re "No registers\\.\r\n$gdb_prompt $" {
++# kfail "vlaregression" $test
++# }
++#}
++#
++#gdb_test "ptype a_string" {type = char \[variable length\]}
+
+# Not runto_main as dw2-bound-loclist.S handles only the first byte of main.
+if ![runto "*main"] {
@@ -1357,10 +1360,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-bound-loclist.exp
+
+# The register contains unpredictable value - the array size.
+gdb_test "ptype reg_string" {type = char \[-?[0-9]+\]}
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-stripped.c
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.dwarf2/dw2-stripped.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-stripped.c 2014-06-16 23:30:30.111940487 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.dwarf2/dw2-stripped.c 2015-11-03 22:23:27.214877617 +0100
@@ -0,0 +1,42 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@@ -1404,10 +1407,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-stripped.c
+ func1 (1, 2);
+ return 0;
+}
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-stripped.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.dwarf2/dw2-stripped.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-stripped.exp 2014-06-16 23:30:30.111940487 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.dwarf2/dw2-stripped.exp 2015-11-03 22:23:27.214877617 +0100
@@ -0,0 +1,79 @@
+# Copyright 2006 Free Software Foundation, Inc.
+
@@ -1488,10 +1491,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-stripped.exp
+gdb_test "step" \
+ "func.* \\(.*\\) at .*" \
+ "step"
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-struct-member-data-location.S
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.dwarf2/dw2-struct-member-data-location.S
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-struct-member-data-location.S 2014-06-16 23:30:30.112940488 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.dwarf2/dw2-struct-member-data-location.S 2015-11-03 22:23:27.214877617 +0100
@@ -0,0 +1,83 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@@ -1576,10 +1579,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-struct-member-data-locat
+
+ .byte 0x0 /* Terminator */
+ .byte 0x0 /* Terminator */
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-struct-member-data-location.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.dwarf2/dw2-struct-member-data-location.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-struct-member-data-location.exp 2014-06-16 23:30:30.112940488 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.dwarf2/dw2-struct-member-data-location.exp 2015-11-03 22:23:27.214877617 +0100
@@ -0,0 +1,37 @@
+# Copyright 2009 Free Software Foundation, Inc.
+
@@ -1618,10 +1621,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-struct-member-data-locat
+clean_restart $binfile
+
+gdb_test "ptype struct some_struct" "type = struct some_struct {\[\r\n \t\]*void field;\[\r\n \t\]*}"
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-subrange-no-type.S
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.dwarf2/dw2-subrange-no-type.S
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-subrange-no-type.S 2014-06-16 23:30:30.112940488 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.dwarf2/dw2-subrange-no-type.S 2015-11-03 22:23:27.214877617 +0100
@@ -0,0 +1,121 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@@ -1744,10 +1747,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-subrange-no-type.S
+ .byte 0x0 /* Terminator */
+
+ .byte 0x0 /* Terminator */
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-subrange-no-type.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.dwarf2/dw2-subrange-no-type.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-subrange-no-type.exp 2014-06-16 23:30:30.112940488 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.dwarf2/dw2-subrange-no-type.exp 2015-11-03 22:23:27.215877623 +0100
@@ -0,0 +1,39 @@
+# Copyright 2012 Free Software Foundation, Inc.
+
@@ -1788,10 +1791,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.dwarf2/dw2-subrange-no-type.exp
+
+gdb_test "ptype notype_string" {type = char \[129\]}
+gdb_test "p notype_string" " = 'x' <repeats 129 times>"
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/dwarf-stride.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/dwarf-stride.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/dwarf-stride.exp 2014-06-16 23:30:30.112940488 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/dwarf-stride.exp 2015-11-03 22:23:27.215877623 +0100
@@ -0,0 +1,42 @@
+# Copyright 2009 Free Software Foundation, Inc.
+
@@ -1835,10 +1838,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/dwarf-stride.exp
+gdb_continue_to_breakpoint "break-here" ".*break-here.*"
+gdb_test "p c40pt(1)" " = '0-hello.*"
+gdb_test "p c40pt(2)" " = '1-hello.*"
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/dwarf-stride.f90
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/dwarf-stride.f90
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/dwarf-stride.f90 2014-06-16 23:30:30.112940488 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/dwarf-stride.f90 2015-11-03 22:23:27.215877623 +0100
@@ -0,0 +1,40 @@
+! Copyright 2009 Free Software Foundation, Inc.
+!
@@ -1880,10 +1883,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/dwarf-stride.f90
+ print *, c40pt ! break-here
+
+end program repro
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/dynamic.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/dynamic.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/dynamic.exp 2014-06-16 23:37:45.568362563 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/dynamic.exp 2015-11-03 22:27:25.481281904 +0100
@@ -0,0 +1,151 @@
+# Copyright 2007 Free Software Foundation, Inc.
+
@@ -1931,9 +1934,9 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/dynamic.exp
+gdb_continue_to_breakpoint "varx-init"
+gdb_test "p varx" "\\$\[0-9\]* = <not allocated>" "p varx unallocated"
+gdb_test "ptype varx" "type = <not allocated>" "ptype varx unallocated"
-+gdb_test "p varx(1,5,17)" "no such vector element because not allocated" "p varx(1,5,17) unallocated"
-+gdb_test "p varx(1,5,17)=1" "no such vector element because not allocated" "p varx(1,5,17)=1 unallocated"
-+gdb_test "ptype varx(1,5,17)" "no such vector element because not allocated" "ptype varx(1,5,17) unallocated"
++gdb_test "p varx(1,5,17)" {no such vector element \(vector not allocated\)} "p varx(1,5,17) unallocated"
++gdb_test "p varx(1,5,17)=1" {no such vector element \(vector not allocated\)} "p varx(1,5,17)=1 unallocated"
++gdb_test "ptype varx(1,5,17)" {no such vector element \(vector not allocated\)} "ptype varx(1,5,17) unallocated"
+
+gdb_breakpoint [gdb_get_line_number "varx-allocated"]
+gdb_continue_to_breakpoint "varx-allocated"
@@ -1979,16 +1982,16 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/dynamic.exp
+gdb_test "p varv" "\\$\[0-9\]* = (<not associated>|.*(Cannot access it|Unable to access the object) because the object is not associated.)" "p varv deassociated"
+gdb_test "ptype varv" "type = (<not associated>|.*(Cannot access it|Unable to access the object) because the object is not associated.)" "ptype varv deassociated"
+gdb_test "p l" "\\$\[0-9\]* = \\.FALSE\\." "p l if varv deassociated"
-+gdb_test "p varv(1,5,17)" "no such vector element because not associated"
-+gdb_test "ptype varv(1,5,17)" "no such vector element because not associated"
++gdb_test "p varv(1,5,17)" {no such vector element \(vector not associated\)}
++gdb_test "ptype varv(1,5,17)" {no such vector element \(vector not associated\)}
+
+gdb_breakpoint [gdb_get_line_number "varx-deallocated"]
+gdb_continue_to_breakpoint "varx-deallocated"
+gdb_test "p varx" "\\$\[0-9\]* = <not allocated>" "p varx deallocated"
+gdb_test "ptype varx" "type = <not allocated>" "ptype varx deallocated"
+gdb_test "p l" "\\$\[0-9\]* = \\.FALSE\\." "p l if varx deallocated"
-+gdb_test "p varx(1,5,17)" "no such vector element because not allocated" "p varx(1,5,17) deallocated"
-+gdb_test "ptype varx(1,5,17)" "no such vector element because not allocated" "ptype varx(1,5,17) deallocated"
++gdb_test "p varx(1,5,17)" {no such vector element \(vector not allocated\)} "p varx(1,5,17) deallocated"
++gdb_test "ptype varx(1,5,17)" {no such vector element \(vector not allocated\)} "ptype varx(1,5,17) deallocated"
+
+gdb_breakpoint [gdb_get_line_number "vary-passed"]
+gdb_continue_to_breakpoint "vary-passed"
@@ -2036,10 +2039,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/dynamic.exp
+gdb_test "p vart(3,8)" "\\$\[0-9\]* = 9"
+# maps to foo::vary(1,3)
+gdb_test "p vart(2,9)" "\\$\[0-9\]* = 10"
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/dynamic.f90
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/dynamic.f90
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/dynamic.f90 2014-06-16 23:30:30.113940488 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/dynamic.f90 2015-11-03 22:23:27.215877623 +0100
@@ -0,0 +1,98 @@
+! Copyright 2007 Free Software Foundation, Inc.
+!
@@ -2139,10 +2142,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/dynamic.f90
+ if (x (1, 1) .ne. 8 .or. x (2, 2) .ne. 9 .or. x (1, 2) .ne. 4) call abort
+ if (x (3, 1) .ne. 10) call abort
+end
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/string.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/string.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/string.exp 2014-06-16 23:30:30.114940489 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/string.exp 2015-11-03 22:23:27.215877623 +0100
@@ -0,0 +1,59 @@
+# Copyright 2008 Free Software Foundation, Inc.
+
@@ -2203,10 +2206,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/string.exp
+gdb_continue_to_breakpoint "var-finish"
+gdb_test "p e" "\\$\[0-9\]* = 'e '" "p e re-set"
+gdb_test "p f" "\\$\[0-9\]* = \\(\\( 'f ', 'f ', 'f ', 'f ', 'f ', 'f ', 'f '\\) \\( 'f2 ', 'f ', 'f ', 'f ', 'f ', 'f ', 'f '\\) \\( 'f ', 'f ', 'f ', 'f ', 'f ', 'f ', 'f '\\) \\)" "p *f re-set"
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/string.f90
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/string.f90
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/string.f90 2014-06-16 23:30:30.114940489 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/string.f90 2015-11-03 22:23:27.215877623 +0100
@@ -0,0 +1,37 @@
+! Copyright 2008 Free Software Foundation, Inc.
+!
@@ -2245,10 +2248,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/string.f90
+ h = 'h'
+ call foo (g, h)
+end
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/subrange.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/subrange.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/subrange.exp 2014-06-16 23:30:30.114940489 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/subrange.exp 2015-11-03 22:23:27.215877623 +0100
@@ -0,0 +1,72 @@
+# Copyright 2011 Free Software Foundation, Inc.
+
@@ -2322,10 +2325,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/subrange.exp
+gdb_unload
+setup_kfail "*-*-*" "vlaregression/9999"
+gdb_test {p $a (3, 2:2)} { = \(23\)}
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/subrange.f90
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/subrange.f90
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/subrange.f90 2014-06-16 23:30:30.114940489 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/subrange.f90 2015-11-03 22:23:27.215877623 +0100
@@ -0,0 +1,28 @@
+! Copyright 2011 Free Software Foundation, Inc.
+!
@@ -2355,10 +2358,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.fortran/subrange.f90
+ ptr => a
+ write (*,*) a ! break-static
+end
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.mi/mi2-var-stale-type.c
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.mi/mi2-var-stale-type.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.mi/mi2-var-stale-type.c 2014-06-16 23:30:30.114940489 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.mi/mi2-var-stale-type.c 2015-11-03 22:23:27.216877629 +0100
@@ -0,0 +1,26 @@
+/* Copyright 2011 Free Software Foundation, Inc.
+
@@ -2386,10 +2389,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.mi/mi2-var-stale-type.c
+
+ return 0;
+}
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.mi/mi2-var-stale-type.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.mi/mi2-var-stale-type.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.mi/mi2-var-stale-type.exp 2014-06-16 23:30:30.114940489 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.mi/mi2-var-stale-type.exp 2015-11-03 22:23:27.216877629 +0100
@@ -0,0 +1,57 @@
+# Copyright 2011 Free Software Foundation, Inc.
+#
@@ -2448,10 +2451,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.mi/mi2-var-stale-type.exp
+mi_create_varobj "vla" "vla" "create local variable vla"
+
+mi_gdb_test "-var-update *" "\\^done,changelist=.*" "-var-update *"
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.opt/array-from-register-func.c
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.opt/array-from-register-func.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.opt/array-from-register-func.c 2014-06-16 23:30:30.115940490 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.opt/array-from-register-func.c 2015-11-03 22:23:27.216877629 +0100
@@ -0,0 +1,22 @@
+/* This file is part of GDB, the GNU debugger.
+
@@ -2475,10 +2478,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.opt/array-from-register-func.c
+{
+ return arr[0];
+}
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.opt/array-from-register.c
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.opt/array-from-register.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.opt/array-from-register.c 2014-06-16 23:30:30.115940490 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.opt/array-from-register.c 2015-11-03 22:23:27.216877629 +0100
@@ -0,0 +1,28 @@
+/* This file is part of GDB, the GNU debugger.
+
@@ -2508,10 +2511,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.opt/array-from-register.c
+
+ return 0;
+}
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.opt/array-from-register.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.opt/array-from-register.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.opt/array-from-register.exp 2014-06-16 23:30:30.115940490 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.opt/array-from-register.exp 2015-11-03 22:23:27.216877629 +0100
@@ -0,0 +1,33 @@
+# Copyright 2009 Free Software Foundation, Inc.
+#
@@ -2546,10 +2549,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.opt/array-from-register.exp
+# Seen regression:
+# Address requested for identifier "arr" which is in register $rdi
+gdb_test "p arr\[0\]" "\\$\[0-9\]+ = 42"
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.pascal/arrays.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.pascal/arrays.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.pascal/arrays.exp 2014-06-16 23:30:30.115940490 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.pascal/arrays.exp 2015-11-03 22:23:27.216877629 +0100
@@ -0,0 +1,104 @@
+# Copyright 2008, 2009 Free Software Foundation, Inc.
+#
@@ -2655,10 +2658,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.pascal/arrays.exp
+}
+gdb_test "print DynArrChar" ".* = 'abcdefghijklm'" "Print dynamic array of char"
+
-Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.pascal/arrays.pas
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.pascal/arrays.pas
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.7.90.20140613/gdb/testsuite/gdb.pascal/arrays.pas 2014-06-16 23:30:30.115940490 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.pascal/arrays.pas 2015-11-03 22:23:27.216877629 +0100
@@ -0,0 +1,82 @@
+{
+ Copyright 2008, 2009 Free Software Foundation, Inc.
@@ -2742,11 +2745,11 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/gdb.pascal/arrays.pas
+ s := 'test'#0'string';
+ writeln(s); { set breakpoint 2 here }
+end.
-Index: gdb-7.7.90.20140613/gdb/testsuite/lib/gdb.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/lib/gdb.exp
===================================================================
---- gdb-7.7.90.20140613.orig/gdb/testsuite/lib/gdb.exp 2014-06-16 23:30:29.278939700 +0200
-+++ gdb-7.7.90.20140613/gdb/testsuite/lib/gdb.exp 2014-06-16 23:30:30.117940492 +0200
-@@ -159,6 +159,11 @@ proc gdb_unload {} {
+--- gdb-7.10.50.20151027.orig/gdb/testsuite/lib/gdb.exp 2015-11-03 22:23:26.684874457 +0100
++++ gdb-7.10.50.20151027/gdb/testsuite/lib/gdb.exp 2015-11-03 22:23:27.217877635 +0100
+@@ -173,6 +173,11 @@ proc gdb_unload {} {
send_gdb "y\n"
exp_continue
}
@@ -2758,10 +2761,10 @@ Index: gdb-7.7.90.20140613/gdb/testsuite/lib/gdb.exp
-re "Discard symbol table from .*y or n.*$" {
send_gdb "y\n"
exp_continue
-Index: gdb-7.7.90.20140613/gdb/testsuite/lib/pascal.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/lib/pascal.exp
===================================================================
---- gdb-7.7.90.20140613.orig/gdb/testsuite/lib/pascal.exp 2014-06-13 03:59:37.000000000 +0200
-+++ gdb-7.7.90.20140613/gdb/testsuite/lib/pascal.exp 2014-06-16 23:30:30.117940492 +0200
+--- gdb-7.10.50.20151027.orig/gdb/testsuite/lib/pascal.exp 2015-10-27 02:48:32.000000000 +0100
++++ gdb-7.10.50.20151027/gdb/testsuite/lib/pascal.exp 2015-11-03 22:23:27.217877635 +0100
@@ -37,6 +37,9 @@ proc pascal_init {} {
global pascal_compiler_is_fpc
global gpc_compiler
diff --git a/gdb-attach-fail-reasons-5of5.patch b/gdb-attach-fail-reasons-5of5.patch
index 83005b4..c4cd84e 100644
--- a/gdb-attach-fail-reasons-5of5.patch
+++ b/gdb-attach-fail-reasons-5of5.patch
@@ -37,13 +37,13 @@ gdb/gdbserver/
(linux_create_inferior, linux_tracefork_child): Call it instead of
direct ptrace.
-Index: gdb-7.9.90.20150709/gdb/nat/linux-ptrace.c
+Index: gdb-7.10.50.20151022/gdb/nat/linux-ptrace.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/nat/linux-ptrace.c 2015-07-09 18:24:13.705140384 +0200
-+++ gdb-7.9.90.20150709/gdb/nat/linux-ptrace.c 2015-07-09 18:24:24.911235973 +0200
-@@ -23,6 +23,10 @@
- #include "buffer.h"
+--- gdb-7.10.50.20151022.orig/gdb/nat/linux-ptrace.c 2015-10-22 22:35:00.474917139 +0200
++++ gdb-7.10.50.20151022/gdb/nat/linux-ptrace.c 2015-10-22 22:35:08.120962729 +0200
+@@ -24,6 +24,10 @@
#include "gdb_wait.h"
+ #include "gdb_ptrace.h"
+#ifdef HAVE_SELINUX_SELINUX_H
+# include <selinux/selinux.h>
@@ -52,7 +52,7 @@ Index: gdb-7.9.90.20150709/gdb/nat/linux-ptrace.c
/* Stores the ptrace options supported by the running kernel.
A value of -1 means we did not check for features yet. A value
of 0 means there are no supported features. */
-@@ -47,6 +51,8 @@ linux_ptrace_attach_fail_reason (pid_t p
+@@ -48,6 +52,8 @@ linux_ptrace_attach_fail_reason (pid_t p
buffer_xml_printf (buffer, _("process %d is a zombie "
"- the process has already terminated"),
(int) pid);
@@ -61,7 +61,7 @@ Index: gdb-7.9.90.20150709/gdb/nat/linux-ptrace.c
}
/* See linux-ptrace.h. */
-@@ -581,6 +587,22 @@ linux_ptrace_init_warnings (void)
+@@ -594,6 +600,22 @@ linux_ptrace_init_warnings (void)
linux_ptrace_test_ret_to_nx ();
}
@@ -84,11 +84,11 @@ Index: gdb-7.9.90.20150709/gdb/nat/linux-ptrace.c
/* Extract extended ptrace event from wait status. */
int
-Index: gdb-7.9.90.20150709/gdb/nat/linux-ptrace.h
+Index: gdb-7.10.50.20151022/gdb/nat/linux-ptrace.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/nat/linux-ptrace.h 2015-07-09 18:24:13.706140392 +0200
-+++ gdb-7.9.90.20150709/gdb/nat/linux-ptrace.h 2015-07-09 18:24:24.912235981 +0200
-@@ -157,6 +157,7 @@ extern void linux_ptrace_attach_fail_rea
+--- gdb-7.10.50.20151022.orig/gdb/nat/linux-ptrace.h 2015-10-22 22:35:00.474917139 +0200
++++ gdb-7.10.50.20151022/gdb/nat/linux-ptrace.h 2015-10-22 22:35:08.120962729 +0200
+@@ -164,6 +164,7 @@ extern void linux_ptrace_attach_fail_rea
extern char *linux_ptrace_attach_fail_reason_string (ptid_t ptid, int err);
extern void linux_ptrace_init_warnings (void);
@@ -96,11 +96,11 @@ Index: gdb-7.9.90.20150709/gdb/nat/linux-ptrace.h
extern void linux_check_ptrace_features (void);
extern void linux_enable_event_reporting (pid_t pid, int attached);
extern void linux_disable_event_reporting (pid_t pid);
-Index: gdb-7.9.90.20150709/gdb/configure.ac
+Index: gdb-7.10.50.20151022/gdb/configure.ac
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/configure.ac 2015-07-09 18:24:13.707140401 +0200
-+++ gdb-7.9.90.20150709/gdb/configure.ac 2015-07-09 18:24:24.913235990 +0200
-@@ -2150,6 +2150,10 @@ case $host_os in
+--- gdb-7.10.50.20151022.orig/gdb/configure.ac 2015-10-22 22:35:00.475917145 +0200
++++ gdb-7.10.50.20151022/gdb/configure.ac 2015-10-22 22:35:08.121962735 +0200
+@@ -2096,6 +2096,10 @@ case $host_os in
esac
AC_DEFINE_UNQUOTED(GDBINIT,"$gdbinit",[The .gdbinit filename.])
@@ -111,11 +111,11 @@ Index: gdb-7.9.90.20150709/gdb/configure.ac
dnl Handle optional features that can be enabled.
# Support for --with-sysroot is a copy of GDB_AC_WITH_DIR,
-Index: gdb-7.9.90.20150709/gdb/gdbserver/configure.ac
+Index: gdb-7.10.50.20151022/gdb/gdbserver/configure.ac
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/gdbserver/configure.ac 2015-07-09 18:24:13.707140401 +0200
-+++ gdb-7.9.90.20150709/gdb/gdbserver/configure.ac 2015-07-09 18:24:24.913235990 +0200
-@@ -499,6 +499,10 @@ if $want_ipa ; then
+--- gdb-7.10.50.20151022.orig/gdb/gdbserver/configure.ac 2015-10-22 22:35:00.475917145 +0200
++++ gdb-7.10.50.20151022/gdb/gdbserver/configure.ac 2015-10-22 22:35:08.121962735 +0200
+@@ -502,6 +502,10 @@ if $want_ipa ; then
fi
fi
@@ -126,11 +126,11 @@ Index: gdb-7.9.90.20150709/gdb/gdbserver/configure.ac
AC_SUBST(GDBSERVER_DEPFILES)
AC_SUBST(GDBSERVER_LIBS)
AC_SUBST(srv_xmlbuiltin)
-Index: gdb-7.9.90.20150709/gdb/gdbserver/linux-low.c
+Index: gdb-7.10.50.20151022/gdb/gdbserver/linux-low.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/gdbserver/linux-low.c 2015-07-09 18:24:13.709140418 +0200
-+++ gdb-7.9.90.20150709/gdb/gdbserver/linux-low.c 2015-07-09 18:24:24.914235998 +0200
-@@ -755,6 +755,29 @@ add_lwp (ptid_t ptid)
+--- gdb-7.10.50.20151022.orig/gdb/gdbserver/linux-low.c 2015-10-22 22:35:00.476917151 +0200
++++ gdb-7.10.50.20151022/gdb/gdbserver/linux-low.c 2015-10-22 22:35:08.122962741 +0200
+@@ -843,6 +843,29 @@ add_lwp (ptid_t ptid)
return lwp;
}
@@ -160,7 +160,7 @@ Index: gdb-7.9.90.20150709/gdb/gdbserver/linux-low.c
/* Start an inferior process and returns its pid.
ALLARGS is a vector of program-name and args. */
-@@ -778,7 +801,7 @@ linux_create_inferior (char *program, ch
+@@ -866,7 +889,7 @@ linux_create_inferior (char *program, ch
if (pid == 0)
{
close_most_fds ();
@@ -169,10 +169,10 @@ Index: gdb-7.9.90.20150709/gdb/gdbserver/linux-low.c
#ifndef __ANDROID__ /* Bionic doesn't use SIGRTMIN the way glibc does. */
signal (__SIGRTMIN + 1, SIG_DFL);
-Index: gdb-7.9.90.20150709/gdb/inf-ptrace.c
+Index: gdb-7.10.50.20151022/gdb/inf-ptrace.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/inf-ptrace.c 2015-07-09 18:24:13.710140426 +0200
-+++ gdb-7.9.90.20150709/gdb/inf-ptrace.c 2015-07-09 18:24:24.915236007 +0200
+--- gdb-7.10.50.20151022.orig/gdb/inf-ptrace.c 2015-10-22 22:35:00.477917156 +0200
++++ gdb-7.10.50.20151022/gdb/inf-ptrace.c 2015-10-22 22:35:08.122962741 +0200
@@ -79,7 +79,15 @@ static void
inf_ptrace_me (void)
{
@@ -189,10 +189,10 @@ Index: gdb-7.9.90.20150709/gdb/inf-ptrace.c
}
/* Start a new inferior Unix child process. EXEC_FILE is the file to
-Index: gdb-7.9.90.20150709/gdb/linux-nat.c
+Index: gdb-7.10.50.20151022/gdb/linux-nat.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/linux-nat.c 2015-07-09 18:24:13.712140443 +0200
-+++ gdb-7.9.90.20150709/gdb/linux-nat.c 2015-07-09 18:24:24.916236015 +0200
+--- gdb-7.10.50.20151022.orig/gdb/linux-nat.c 2015-10-22 22:35:00.477917156 +0200
++++ gdb-7.10.50.20151022/gdb/linux-nat.c 2015-10-22 22:35:08.123962747 +0200
@@ -1184,6 +1184,7 @@ linux_nat_create_inferior (struct target
{
struct cleanup *restore_personality
@@ -231,10 +231,10 @@ Index: gdb-7.9.90.20150709/gdb/linux-nat.c
do_cleanups (restore_personality);
}
-Index: gdb-7.9.90.20150709/gdb/config.in
+Index: gdb-7.10.50.20151022/gdb/config.in
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/config.in 2015-07-09 18:24:13.713140452 +0200
-+++ gdb-7.9.90.20150709/gdb/config.in 2015-07-09 18:24:24.916236015 +0200
+--- gdb-7.10.50.20151022.orig/gdb/config.in 2015-10-22 22:35:00.478917162 +0200
++++ gdb-7.10.50.20151022/gdb/config.in 2015-10-22 22:35:08.123962747 +0200
@@ -264,6 +264,9 @@
/* Define if librpm library is being used. */
#undef HAVE_LIBRPM
@@ -255,11 +255,11 @@ Index: gdb-7.9.90.20150709/gdb/config.in
/* Define to 1 if you have the `setlocale' function. */
#undef HAVE_SETLOCALE
-Index: gdb-7.9.90.20150709/gdb/configure
+Index: gdb-7.10.50.20151022/gdb/configure
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/configure 2015-07-09 18:24:13.718140495 +0200
-+++ gdb-7.9.90.20150709/gdb/configure 2015-07-09 18:24:24.920236049 +0200
-@@ -14228,6 +14228,64 @@ cat >>confdefs.h <<_ACEOF
+--- gdb-7.10.50.20151022.orig/gdb/configure 2015-10-22 22:35:00.480917174 +0200
++++ gdb-7.10.50.20151022/gdb/configure 2015-10-22 22:35:08.125962759 +0200
+@@ -14691,6 +14691,64 @@ cat >>confdefs.h <<_ACEOF
_ACEOF
@@ -324,11 +324,11 @@ Index: gdb-7.9.90.20150709/gdb/configure
# Support for --with-sysroot is a copy of GDB_AC_WITH_DIR,
# except that the argument to --with-sysroot is optional.
-Index: gdb-7.9.90.20150709/gdb/gdbserver/config.in
+Index: gdb-7.10.50.20151022/gdb/gdbserver/config.in
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/gdbserver/config.in 2015-07-09 18:24:13.719140503 +0200
-+++ gdb-7.9.90.20150709/gdb/gdbserver/config.in 2015-07-09 18:24:24.920236049 +0200
-@@ -113,6 +113,9 @@
+--- gdb-7.10.50.20151022.orig/gdb/gdbserver/config.in 2015-10-22 22:35:00.481917180 +0200
++++ gdb-7.10.50.20151022/gdb/gdbserver/config.in 2015-10-22 22:35:08.126962765 +0200
+@@ -117,6 +117,9 @@
/* Define to 1 if you have the `mcheck' library (-lmcheck). */
#undef HAVE_LIBMCHECK
@@ -338,7 +338,7 @@ Index: gdb-7.9.90.20150709/gdb/gdbserver/config.in
/* Define if the target supports branch tracing. */
#undef HAVE_LINUX_BTRACE
-@@ -189,6 +192,9 @@
+@@ -196,6 +199,9 @@
/* Define to 1 if you have the `setns' function. */
#undef HAVE_SETNS
@@ -348,11 +348,11 @@ Index: gdb-7.9.90.20150709/gdb/gdbserver/config.in
/* Define to 1 if you have the <sgtty.h> header file. */
#undef HAVE_SGTTY_H
-Index: gdb-7.9.90.20150709/gdb/gdbserver/configure
+Index: gdb-7.10.50.20151022/gdb/gdbserver/configure
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/gdbserver/configure 2015-07-09 18:24:13.721140520 +0200
-+++ gdb-7.9.90.20150709/gdb/gdbserver/configure 2015-07-09 18:24:24.922236066 +0200
-@@ -7022,6 +7022,64 @@ if $want_ipa ; then
+--- gdb-7.10.50.20151022.orig/gdb/gdbserver/configure 2015-10-22 22:35:00.482917186 +0200
++++ gdb-7.10.50.20151022/gdb/gdbserver/configure 2015-10-22 22:35:08.127962770 +0200
+@@ -7290,6 +7290,64 @@ if $want_ipa ; then
fi
fi
diff --git a/gdb-fortran-allocate-not-inited.patch b/gdb-fortran-allocate-not-inited.patch
new file mode 100644
index 0000000..5b27165
--- /dev/null
+++ b/gdb-fortran-allocate-not-inited.patch
@@ -0,0 +1,61 @@
+http://sourceware.org/ml/gdb-patches/2015-11/msg00127.html
+Subject: [testsuite patch] Fortran: allocate()d memory is uninitialized
+
+
+--mP3DRpeJDSE+ciuQ
+Content-Type: text/plain; charset=us-ascii
+Content-Disposition: inline
+
+Hi,
+
+ allocate (vla1 (5)) ! vla1-not-allocated
+ l = allocated(vla1) ! vla1-allocated <------------------
+
+Expecting: ^(510-data-evaluate-expression vla1[^M
+]+)?(510\^done,value="\(0, 0, 0, 0, 0\)"[^M
+]+[(]gdb[)] ^M
+[ ]*)
+510-data-evaluate-expression vla1^M
+510^done,value="(1.82987403e-09, 7.8472714e-44, 1.82987403e-09, 7.8472714e-44, 2.67929926e+20)"^M
+(gdb) ^M
+FAIL: gdb.mi/mi-vla-fortran.exp: evaluate allocated vla
+
+gcc-4.9.2-6.fc21.x86_64
+
+I think some older gfortran did initialize allocated memory but that is an
+unspecified behavior. I haven't found any initialization mentioned
+in Fortran 90 standard (draft) and it is also clearly stated here:
+ https://software.intel.com/en-us/forums/intel-fortran-compiler-for-linux-and-mac-os-x/topic/268786
+ Initialization to 0 of allocated arrays (of integers) is an
+ implementation issue. i.e. do not rely on it.
+
+OK for check-in?
+
+
+Jan
+
+--mP3DRpeJDSE+ciuQ
+Content-Type: text/plain; charset=us-ascii
+Content-Disposition: inline; filename=1
+
+gdb/testsuite/ChangeLog
+2015-11-03 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * gdb.mi/mi-vla-fortran.exp (evaluate allocated vla): Remove test.
+
+diff --git a/gdb/testsuite/gdb.mi/mi-vla-fortran.exp b/gdb/testsuite/gdb.mi/mi-vla-fortran.exp
+index d191623..baee7f8 100644
+--- a/gdb/testsuite/gdb.mi/mi-vla-fortran.exp
++++ b/gdb/testsuite/gdb.mi/mi-vla-fortran.exp
+@@ -68,8 +68,6 @@ mi_create_breakpoint "-t vla.f90:$bp_lineno" 2 "del" "vla" ".*vla.f90" \
+ mi_run_cmd
+ mi_expect_stop "breakpoint-hit" "vla" "" ".*vla.f90" "$bp_lineno" \
+ { "" "disp=\"del\"" } "run to breakpoint at line $bp_lineno"
+-mi_gdb_test "510-data-evaluate-expression vla1" \
+- "510\\^done,value=\"\\(0, 0, 0, 0, 0\\)\"" "evaluate allocated vla"
+
+ mi_create_varobj_checked vla1_allocated vla1 "real\\\(kind=4\\\) \\\(5\\\)" \
+ "create local variable vla1_allocated"
+
+--mP3DRpeJDSE+ciuQ--
+
diff --git a/gdb-nonstop-scratchpad.patch b/gdb-nonstop-scratchpad.patch
new file mode 100644
index 0000000..5229e56
--- /dev/null
+++ b/gdb-nonstop-scratchpad.patch
@@ -0,0 +1,268 @@
+http://sourceware.org/ml/gdb-patches/2015-10/msg00601.html
+Subject: [PATCH] [PATCH] Don't displaced step when there's a breakpoint in the scratch pad range
+
+Assuming displaced stepping is enabled, and a breakpoint is set in the
+memory region of the scratch pad, things break. One of two cases can
+happen:
+
+#1 - The breakpoint wasn't inserted yet (all threads were stopped), so
+ after setting up the displaced stepping scratch pad with the
+ adjusted copy of the instruction we're trying to single-step, we
+ insert the breakpoint, which corrupts the scratch pad, and the
+ inferior executes the wrong instruction. (Example below.)
+ This is clearly unacceptable.
+
+#2 - The breakpoint was already inserted, so setting up the displaced
+ stepping scratch pad overwrites the breakpoint. This is OK in
+ the sense that we already assume that no thread is going to
+ executes the code in the scratch pad range (after initial
+ startup) anyway.
+
+This commit addresses both cases by simply punting on displaced
+stepping if we have a breakpoint in the scratch pad range.
+
+The #1 case above explains a few regressions exposed by the AS/NS
+series on x86:
+
+ Running ./gdb.dwarf2/callframecfa.exp ...
+ FAIL: gdb.dwarf2/callframecfa.exp: set display for call-frame-cfa
+ FAIL: gdb.dwarf2/callframecfa.exp: step 1 for call-frame-cfa
+ FAIL: gdb.dwarf2/callframecfa.exp: step 2 for call-frame-cfa
+ FAIL: gdb.dwarf2/callframecfa.exp: step 3 for call-frame-cfa
+ FAIL: gdb.dwarf2/callframecfa.exp: step 4 for call-frame-cfa
+ Running ./gdb.dwarf2/typeddwarf.exp ...
+ FAIL: gdb.dwarf2/typeddwarf.exp: continue to breakpoint: continue to typeddwarf.c:53
+ FAIL: gdb.dwarf2/typeddwarf.exp: check value of x at typeddwarf.c:53
+ FAIL: gdb.dwarf2/typeddwarf.exp: check value of y at typeddwarf.c:53
+ FAIL: gdb.dwarf2/typeddwarf.exp: check value of z at typeddwarf.c:53
+ FAIL: gdb.dwarf2/typeddwarf.exp: continue to breakpoint: continue to typeddwarf.c:73
+ FAIL: gdb.dwarf2/typeddwarf.exp: check value of w at typeddwarf.c:73
+ FAIL: gdb.dwarf2/typeddwarf.exp: check value of x at typeddwarf.c:73
+ FAIL: gdb.dwarf2/typeddwarf.exp: check value of y at typeddwarf.c:73
+ FAIL: gdb.dwarf2/typeddwarf.exp: check value of z at typeddwarf.c:73
+
+Enabling "maint set target-non-stop on" implies displaced stepping
+enabled as well, and it's the latter that's to blame here. We can see
+the same failures with "maint set target-non-stop off + set displaced
+on".
+
+Diffing (good/bad) gdb.log for callframecfa.exp shows:
+
+ @@ -99,29 +99,29 @@ Breakpoint 2 at 0x80481b0: file q.c, lin
+ continue
+ Continuing.
+
+ -Breakpoint 2, func (arg=77) at q.c:2
+ +Breakpoint 2, func (arg=52301) at q.c:2
+ 2 in q.c
+ (gdb) PASS: gdb.dwarf2/callframecfa.exp: continue to breakpoint: continue to breakpoint for call-frame-cfa
+ display arg
+ -1: arg = 77
+ -(gdb) PASS: gdb.dwarf2/callframecfa.exp: set display for call-frame-cfa
+ +1: arg = 52301
+ +(gdb) FAIL: gdb.dwarf2/callframecfa.exp: set display for call-frame-cfa
+
+The problem is here, when setting up the func call:
+
+ Breakpoint 1, main (argc=-13345, argv=0x0) at q.c:7
+ 7 in q.c
+
+ (gdb) disassemble
+ Dump of assembler code for function main:
+ 0x080481bb <+0>: push %ebp
+ 0x080481bc <+1>: mov %esp,%ebp
+ 0x080481be <+3>: sub $0x4,%esp
+ => 0x080481c1 <+6>: movl $0x4d,(%esp)
+ 0x080481c8 <+13>: call 0x80481b0 <func>
+ 0x080481cd <+18>: leave
+ 0x080481ce <+19>: ret
+ End of assembler dump.
+ (gdb) disassemble /r
+ Dump of assembler code for function main:
+ 0x080481bb <+0>: 55 push %ebp
+ 0x080481bc <+1>: 89 e5 mov %esp,%ebp
+ 0x080481be <+3>: 83 ec 04 sub $0x4,%esp
+ => 0x080481c1 <+6>: c7 04 24 4d 00 00 00 movl $0x4d,(%esp)
+ 0x080481c8 <+13>: e8 e3 ff ff ff call 0x80481b0 <func>
+ 0x080481cd <+18>: c9 leave
+ 0x080481ce <+19>: c3 ret
+ End of assembler dump.
+
+Note the breakpoint at main is set at 0x080481c1. Right at the
+instruction that sets up func's argument. Executing that instruction
+should write 0x4d to the address pointed at by $esp. However, if we
+stepi, the program manages to write 52301/0xcc4d there instead (0xcc
+is int3, the x86 breakpoint instruction), because the breakpoint
+address is 4 bytes inside the scratch pad location, which is
+0x080481bd:
+
+ (gdb) p 0x080481c1 - 0x080481bd
+ $1 = 4
+
+IOW, instead of executing:
+
+ "c7 04 24 4d 00 00 00" [ movl $0x4d,(%esp) ]
+
+the inferior executes:
+
+ "c7 04 24 4d cc 00 00" [movl $0xcc4d,(%esp) ]
+
+gdb/ChangeLog:
+2015-10-26 Pedro Alves <palves@redhat.com>
+
+ * breakpoint.c (breakpoint_in_range_p)
+ (breakpoint_location_address_range_overlap): New functions.
+ * breakpoint.h (breakpoint_in_range_p): New declaration.
+ * infrun.c (displaced_step_prepare_throw): If there's a breakpoint
+ in the scratch pad range, don't displaced step.
+---
+ gdb/breakpoint.c | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ gdb/breakpoint.h | 5 +++++
+ gdb/infrun.c | 23 ++++++++++++++++++++++
+ 3 files changed, 88 insertions(+)
+
+diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
+index 2c901ff..5863573 100644
+--- a/gdb/breakpoint.c
++++ b/gdb/breakpoint.c
+@@ -173,6 +173,10 @@ static int breakpoint_location_address_match (struct bp_location *bl,
+ struct address_space *aspace,
+ CORE_ADDR addr);
+
++static int breakpoint_location_address_range_overlap (struct bp_location *,
++ struct address_space *,
++ CORE_ADDR, int);
++
+ static void breakpoints_info (char *, int);
+
+ static void watchpoints_info (char *, int);
+@@ -4243,6 +4247,40 @@ breakpoint_here_p (struct address_space *aspace, CORE_ADDR pc)
+ return any_breakpoint_here ? ordinary_breakpoint_here : no_breakpoint_here;
+ }
+
++/* See breakpoint.h. */
++
++int
++breakpoint_in_range_p (struct address_space *aspace,
++ CORE_ADDR addr, ULONGEST len)
++{
++ struct bp_location *bl, **blp_tmp;
++
++ ALL_BP_LOCATIONS (bl, blp_tmp)
++ {
++ if (bl->loc_type != bp_loc_software_breakpoint
++ && bl->loc_type != bp_loc_hardware_breakpoint)
++ continue;
++
++ if ((breakpoint_enabled (bl->owner)
++ || bl->permanent)
++ && breakpoint_location_address_range_overlap (bl, aspace,
++ addr, len))
++ {
++ if (overlay_debugging
++ && section_is_overlay (bl->section)
++ && !section_is_mapped (bl->section))
++ {
++ /* Unmapped overlay -- can't be a match. */
++ continue;
++ }
++
++ return 1;
++ }
++ }
++
++ return 0;
++}
++
+ /* Return true if there's a moribund breakpoint at PC. */
+
+ int
+@@ -7079,6 +7117,28 @@ breakpoint_location_address_match (struct bp_location *bl,
+ aspace, addr)));
+ }
+
++/* Returns true if the [ADDR,ADDR+LEN) range in ASPACE overlaps
++ breakpoint BL. BL may be a ranged breakpoint. In most targets, a
++ match happens only if ASPACE matches the breakpoint's address
++ space. On targets that have global breakpoints, the address space
++ doesn't really matter. */
++
++static int
++breakpoint_location_address_range_overlap (struct bp_location *bl,
++ struct address_space *aspace,
++ CORE_ADDR addr, int len)
++{
++ if (gdbarch_has_global_breakpoints (target_gdbarch ())
++ || bl->pspace->aspace == aspace)
++ {
++ int bl_len = bl->length != 0 ? bl->length : 1;
++
++ if (mem_ranges_overlap (addr, len, bl->address, bl_len))
++ return 1;
++ }
++ return 0;
++}
++
+ /* If LOC1 and LOC2's owners are not tracepoints, returns false directly.
+ Then, if LOC1 and LOC2 represent the same tracepoint location, returns
+ true, otherwise returns false. */
+diff --git a/gdb/breakpoint.h b/gdb/breakpoint.h
+index 896d3eb..ee8b2e0 100644
+--- a/gdb/breakpoint.h
++++ b/gdb/breakpoint.h
+@@ -1146,6 +1146,11 @@ extern int program_breakpoint_here_p (struct gdbarch *gdbarch, CORE_ADDR address
+ extern enum breakpoint_here breakpoint_here_p (struct address_space *,
+ CORE_ADDR);
+
++/* Return true if an enabled breakpoint exists in the range defined by
++ ADDR and LEN, in ASPACE. */
++extern int breakpoint_in_range_p (struct address_space *aspace,
++ CORE_ADDR addr, ULONGEST len);
++
+ extern int moribund_breakpoint_here_p (struct address_space *, CORE_ADDR);
+
+ extern int breakpoint_inserted_here_p (struct address_space *, CORE_ADDR);
+diff --git a/gdb/infrun.c b/gdb/infrun.c
+index 917f9be..ef4ccb4 100644
+--- a/gdb/infrun.c
++++ b/gdb/infrun.c
+@@ -1729,6 +1729,7 @@ displaced_step_prepare_throw (ptid_t ptid)
+ struct thread_info *tp = find_thread_ptid (ptid);
+ struct regcache *regcache = get_thread_regcache (ptid);
+ struct gdbarch *gdbarch = get_regcache_arch (regcache);
++ struct address_space *aspace = get_regcache_aspace (regcache);
+ CORE_ADDR original, copy;
+ ULONGEST len;
+ struct displaced_step_closure *closure;
+@@ -1784,6 +1785,28 @@ displaced_step_prepare_throw (ptid_t ptid)
+ copy = gdbarch_displaced_step_location (gdbarch);
+ len = gdbarch_max_insn_length (gdbarch);
+
++ if (breakpoint_in_range_p (aspace, copy, len))
++ {
++ /* There's a breakpoint set in the scratch pad location range
++ (which is usually around the entry point). We'd either
++ install it before resuming, which would overwrite/corrupt the
++ scratch pad, or if it was already inserted, this displaced
++ step would overwrite it. The latter is OK in the sense that
++ we already assume that no thread is going to execute the code
++ in the scratch pad range (after initial startup) anyway, but
++ the former is unacceptable. Simply punt and fallback to
++ stepping over this breakpoint in-line. */
++ if (debug_displaced)
++ {
++ fprintf_unfiltered (gdb_stdlog,
++ "displaced: breakpoint set in scratch pad. "
++ "Stepping over breakpoint in-line instead.\n");
++ }
++
++ do_cleanups (old_cleanups);
++ return -1;
++ }
++
+ /* Save the original contents of the copy area. */
+ displaced->step_saved_copy = (gdb_byte *) xmalloc (len);
+ ignore_cleanups = make_cleanup (free_current_contents,
+--
+1.9.3
+
diff --git a/gdb-probes-based-interface-robust-1of2.patch b/gdb-probes-based-interface-robust-1of2.patch
deleted file mode 100644
index 5295e06..0000000
--- a/gdb-probes-based-interface-robust-1of2.patch
+++ /dev/null
@@ -1,193 +0,0 @@
-From f469e8ce11672e26feb5ba6f9a134275fcfd5b4f Mon Sep 17 00:00:00 2001
-From: Sergio Durigan Junior <sergiodj@redhat.com>
-Date: Fri, 21 Aug 2015 18:13:46 -0400
-Subject: [PATCH 1/4] Improve error reporting when handling SystemTap SDT
- probes
-
-This patch improves the error reporting when handling SystemTap SDT
-probes. "Handling", in this case, mostly means "parsing".
-
-On gdb/probe.h, only trivial changes on functions' comments in order
-to explicitly mention that some of them can throw exceptions. This is
-just to make the API a bit more clear.
-
-On gdb/stap-probe.c, I have s/internal_error/error/ on two functions
-that are responsible for parsing specific bits of the probes'
-arguments: stap_get_opcode and stap_get_expected_argument_type. It is
-not correct to call internal_error on such situations because it is
-not really GDB's fault if the probes have malformed arguments. I also
-improved the error reported on stap_get_expected_argument_type by also
-including the probe name on it.
-
-Aside from that, and perhaps most importantly, I added a check on
-stap_get_arg to make sure that we don't try to extract an argument
-from a probe that has no arguments. This check issues an
-internal_error, because it really means that GDB is doing something it
-shouldn't.
-
-Although it can be considered almost trivial, and despite the fact
-that I am the maintainer for this part of the code, I am posting this
-patch for review. I will wait a few days, and if nobody has anything
-to say, I will go ahead and push it.
-
-gdb/ChangeLog:
-2015-09-01 Sergio Durigan Junior <sergiodj@redhat.com>
-
- * probe.h (struct probe_ops) <get_probe_argument_count,
- evaluate_probe_argument, enable_probe, disable_probe>: Mention in
- the comment that the function can throw an exception.
- (get_probe_argument_count): Likewise.
- (evaluate_probe_argument): Likewise.
- * stap-probe.c (stap_get_opcode): Call error instead of
- internal_error.
- (stap_get_expected_argument_type): Likewise. Add argument
- 'probe'. Improve error message by mentioning the probe's name.
- (stap_parse_probe_arguments): Adjust call to
- stap_get_expected_argument_type.
- (stap_get_arg): Add comment. Assert that 'probe->args_parsed' is
- not zero. Call internal_error if GDB requests an argument but the
- probe has no arguments.
----
- gdb/ChangeLog | 17 +++++++++++++++++
- gdb/probe.h | 20 ++++++++++++++------
- gdb/stap-probe.c | 29 ++++++++++++++++++++++-------
- 3 files changed, 53 insertions(+), 13 deletions(-)
-
-Index: gdb-7.10/gdb/probe.h
-===================================================================
---- gdb-7.10.orig/gdb/probe.h
-+++ gdb-7.10/gdb/probe.h
-@@ -70,7 +70,8 @@ struct probe_ops
- CORE_ADDR (*get_probe_address) (struct probe *probe,
- struct objfile *objfile);
-
-- /* Return the number of arguments of PROBE. */
-+ /* Return the number of arguments of PROBE. This function can
-+ throw an exception. */
-
- unsigned (*get_probe_argument_count) (struct probe *probe,
- struct frame_info *frame);
-@@ -82,7 +83,8 @@ struct probe_ops
- int (*can_evaluate_probe_arguments) (struct probe *probe);
-
- /* Evaluate the Nth argument from the PROBE, returning a value
-- corresponding to it. The argument number is represented N. */
-+ corresponding to it. The argument number is represented N.
-+ This function can throw an exception. */
-
- struct value *(*evaluate_probe_argument) (struct probe *probe,
- unsigned n,
-@@ -141,13 +143,15 @@ struct probe_ops
-
- /* Enable a probe. The semantics of "enabling" a probe depend on
- the specific backend and the field can be NULL in case enabling
-- probes is not supported. */
-+ probes is not supported. This function can throw an
-+ exception. */
-
- void (*enable_probe) (struct probe *probe);
-
- /* Disable a probe. The semantics of "disabling" a probe depend
- on the specific backend and the field can be NULL in case
-- disabling probes is not supported. */
-+ disabling probes is not supported. This function can throw an
-+ exception. */
-
- void (*disable_probe) (struct probe *probe);
- };
-@@ -264,7 +268,9 @@ extern struct cmd_list_element **info_pr
- extern CORE_ADDR get_probe_address (struct probe *probe,
- struct objfile *objfile);
-
--/* Return the argument count of the specified probe. */
-+/* Return the argument count of the specified probe.
-+
-+ This function can throw an exception. */
-
- extern unsigned get_probe_argument_count (struct probe *probe,
- struct frame_info *frame);
-@@ -276,7 +282,9 @@ extern unsigned get_probe_argument_count
- extern int can_evaluate_probe_arguments (struct probe *probe);
-
- /* Evaluate argument N of the specified probe. N must be between 0
-- inclusive and get_probe_argument_count exclusive. */
-+ inclusive and get_probe_argument_count exclusive.
-+
-+ This function can throw an exception. */
-
- extern struct value *evaluate_probe_argument (struct probe *probe,
- unsigned n,
-Index: gdb-7.10/gdb/stap-probe.c
-===================================================================
---- gdb-7.10.orig/gdb/stap-probe.c
-+++ gdb-7.10/gdb/stap-probe.c
-@@ -313,9 +313,8 @@ stap_get_opcode (const char **s)
- break;
-
- default:
-- internal_error (__FILE__, __LINE__,
-- _("Invalid opcode in expression `%s' for SystemTap"
-- "probe"), *s);
-+ error (_("Invalid opcode in expression `%s' for SystemTap"
-+ "probe"), *s);
- }
-
- return op;
-@@ -326,7 +325,8 @@ stap_get_opcode (const char **s)
-
- static struct type *
- stap_get_expected_argument_type (struct gdbarch *gdbarch,
-- enum stap_arg_bitness b)
-+ enum stap_arg_bitness b,
-+ const struct stap_probe *probe)
- {
- switch (b)
- {
-@@ -361,8 +361,8 @@ stap_get_expected_argument_type (struct
- return builtin_type (gdbarch)->builtin_uint64;
-
- default:
-- internal_error (__FILE__, __LINE__,
-- _("Undefined bitness for probe."));
-+ error (_("Undefined bitness for probe '%s'."),
-+ probe->p.name);
- break;
- }
- }
-@@ -1172,7 +1172,8 @@ stap_parse_probe_arguments (struct stap_
- else
- arg.bitness = STAP_ARG_BITNESS_UNDEFINED;
-
-- arg.atype = stap_get_expected_argument_type (gdbarch, arg.bitness);
-+ arg.atype = stap_get_expected_argument_type (gdbarch, arg.bitness,
-+ probe);
-
- expr = stap_parse_argument (&cur, arg.atype, gdbarch);
-
-@@ -1278,12 +1279,26 @@ stap_is_operator (const char *op)
- return ret;
- }
-
-+/* Return argument N of probe PROBE.
-+
-+ If the probe's arguments have not been parsed yet, parse them. If
-+ there are no arguments, throw an exception (error). Otherwise,
-+ return the requested argument. */
-+
- static struct stap_probe_arg *
- stap_get_arg (struct stap_probe *probe, unsigned n, struct gdbarch *gdbarch)
- {
- if (!probe->args_parsed)
- stap_parse_probe_arguments (probe, gdbarch);
-
-+ gdb_assert (probe->args_parsed);
-+ if (probe->args_u.vec == NULL)
-+ internal_error (__FILE__, __LINE__,
-+ _("Probe '%s' apparently does not have arguments, but \n"
-+ "GDB is requesting its argument number %u anyway. "
-+ "This should not happen. Please report this bug."),
-+ probe->p.name, n);
-+
- return VEC_index (stap_probe_arg_s, probe->args_u.vec, n);
- }
-
diff --git a/gdb-probes-based-interface-robust-2of2.patch b/gdb-probes-based-interface-robust-2of2.patch
deleted file mode 100644
index a9a022c..0000000
--- a/gdb-probes-based-interface-robust-2of2.patch
+++ /dev/null
@@ -1,194 +0,0 @@
-From 3bd7e5b7ee5ea0b3bbb4030ca841f66faad74f0f Mon Sep 17 00:00:00 2001
-From: Sergio Durigan Junior <sergiodj@redhat.com>
-Date: Fri, 21 Aug 2015 18:28:07 -0400
-Subject: [PATCH 2/4] Catching errors on probes-based dynamic linker interface
-
-This patch is intended to make the interaction between the
-probes-based dynamic linker interface and the SystemTap SDT probe code
-on GDB more robust. It does that by wrapping the calls to the probe
-API with TRY...CATCH'es, so that any exception thrown will be caught
-and handled properly.
-
-The idea for this patch came from
-<https://bugzilla.redhat.com/show_bug.cgi?id=1196181>, which is a bug
-initially filed against Fedora GDB (but now under Fedora GLIBC). This
-bug happens on armhfp (although it could happen on other targets as
-well), and is triggered because GCC generates a strange argument for
-one of the probes used by GDB in the dynamic linker interface. As can
-be seen in the bug, this argument is "-4@.L1052".
-
-I don't want to discuss the reasons for this argument to be there
-(this discussion belongs to the bug, or to another thread), but GDB
-could definitely do a better error handling here. Currently, one sees
-the following message when there is an error in the probes-based
-dynamic linker interface:
-
- (gdb) run
- Starting program: /bin/inferior
- warning: Probes-based dynamic linker interface failed.
- Reverting to original interface.
-
- Cannot parse expression `.L976 4@r4'.
- (gdb)
-
-Which means that one needs to explicitly issue a "continue" command to
-make GDB continue running the inferior, even though this error is not
-fatal and GDB will fallback to the old interface automatically.
-
-This is where this patch helps: it makes GDB still print the necessary
-warnings or error messages, but it *also* does not stop the inferior
-unnecessarily.
-
-I have tested this patch on the systems where this error happens, but
-I could not come up with a way to create a testcase for it.
-Nevertheless, it should be straightforward to see that this patch does
-improve the current situation.
-
-gdb/ChangeLog:
-2015-09-01 Sergio Durigan Junior <sergiodj@redhat.com>
-
- * solib-svr4.c (solib_event_probe_action): Call
- get_probe_argument_count using TRY...CATCH.
- (svr4_handle_solib_event): Likewise, for evaluate_probe_argument.
----
- gdb/ChangeLog | 6 ++++++
- gdb/solib-svr4.c | 43 ++++++++++++++++++++++++++++++++++++++++---
- 2 files changed, 46 insertions(+), 3 deletions(-)
-
-Index: gdb-7.10/gdb/solib-svr4.c
-===================================================================
---- gdb-7.10.orig/gdb/solib-svr4.c
-+++ gdb-7.10/gdb/solib-svr4.c
-@@ -1796,7 +1796,23 @@ solib_event_probe_action (struct probe_a
- arg0: Lmid_t lmid (mandatory)
- arg1: struct r_debug *debug_base (mandatory)
- arg2: struct link_map *new (optional, for incremental updates) */
-- probe_argc = get_probe_argument_count (pa->probe, frame);
-+ TRY
-+ {
-+ probe_argc = get_probe_argument_count (pa->probe, frame);
-+ }
-+ CATCH (ex, RETURN_MASK_ERROR)
-+ {
-+ exception_print (gdb_stderr, ex);
-+ probe_argc = 0;
-+ }
-+ END_CATCH
-+
-+ /* If get_probe_argument_count throws an exception, probe_argc will
-+ be set to zero. However, if pa->probe does not have arguments,
-+ then get_probe_argument_count will succeed but probe_argc will
-+ also be zero. Both cases happen because of different things, but
-+ they are treated equally here: action will be set to
-+ PROBES_INTERFACE_FAILED. */
- if (probe_argc == 2)
- action = FULL_RELOAD;
- else if (probe_argc < 2)
-@@ -1950,7 +1966,17 @@ svr4_handle_solib_event (void)
- usm_chain = make_cleanup (resume_section_map_updates_cleanup,
- current_program_space);
-
-- val = evaluate_probe_argument (pa->probe, 1, frame);
-+ TRY
-+ {
-+ val = evaluate_probe_argument (pa->probe, 1, frame);
-+ }
-+ CATCH (ex, RETURN_MASK_ERROR)
-+ {
-+ exception_print (gdb_stderr, ex);
-+ val = NULL;
-+ }
-+ END_CATCH
-+
- if (val == NULL)
- {
- do_cleanups (old_chain);
-@@ -1981,7 +2007,18 @@ svr4_handle_solib_event (void)
-
- if (action == UPDATE_OR_RELOAD)
- {
-- val = evaluate_probe_argument (pa->probe, 2, frame);
-+ TRY
-+ {
-+ val = evaluate_probe_argument (pa->probe, 2, frame);
-+ }
-+ CATCH (ex, RETURN_MASK_ERROR)
-+ {
-+ exception_print (gdb_stderr, ex);
-+ do_cleanups (old_chain);
-+ return;
-+ }
-+ END_CATCH
-+
- if (val != NULL)
- lm = value_as_address (val);
-
-From ad1c917a79e8c5aa67657f148415c1bee01b240f Mon Sep 17 00:00:00 2001
-From: Sergio Durigan Junior <sergiodj@redhat.com>
-Date: Wed, 2 Sep 2015 00:34:22 -0400
-Subject: [PATCH 3/4] Initialize variable and silence GCC warning from last
- commit
-
-BuildBot e-mailed me to let me know that my last commit broke GDB on
-RHEL-7.1 s390x. On solib-svr4.c:svr4_handle_solib_event, 'val' now
-needs to be initialized as NULL because it is inside a TRY..CATCH
-block. This patch does that. Pushed as obvious.
-
-gdb/ChangeLog:
-2015-09-01 Sergio Durigan Junior <sergiodj@redhat.com>
-
- * solib-svr4.c (svr4_handle_solib_event): Initialize 'val' as NULL
----
- gdb/ChangeLog | 4 ++++
- gdb/solib-svr4.c | 2 +-
- 2 files changed, 5 insertions(+), 1 deletion(-)
-
-Index: gdb-7.10/gdb/solib-svr4.c
-===================================================================
---- gdb-7.10.orig/gdb/solib-svr4.c
-+++ gdb-7.10/gdb/solib-svr4.c
-@@ -1918,7 +1918,7 @@ svr4_handle_solib_event (void)
- struct probe_and_action *pa;
- enum probe_action action;
- struct cleanup *old_chain, *usm_chain;
-- struct value *val;
-+ struct value *val = NULL;
- CORE_ADDR pc, debug_base, lm = 0;
- int is_initial_ns;
- struct frame_info *frame = get_current_frame ();
-From 73c6b4756a7cee53c274ed05fddcd079b8b7e57c Mon Sep 17 00:00:00 2001
-From: Sergio Durigan Junior <sergiodj@redhat.com>
-Date: Wed, 2 Sep 2015 00:46:43 -0400
-Subject: [PATCH 4/4] Initialize yet another variable to silence GCC warning
- from last-but-one commit
-
-Yet another BuildBot e-mail, yet another breakage on RHEL-7.1 s390x
-(which uses an older GCC). This time,
-solib-svr4.c:solib_event_probe_action has the probe_argc variable,
-which is now inside a TRY..CATCH and therefore needs to be
-initialized. Pushed as obvious.
-
-gdb/ChangeLog:
-2015-09-01 Sergio Durigan Junior <sergiodj@redhat.com>
-
- * solib-svr4.c (solib_event_probe_action): Initialize 'probe_argc'
- as zero.
----
- gdb/ChangeLog | 5 +++++
- gdb/solib-svr4.c | 2 +-
- 2 files changed, 6 insertions(+), 1 deletion(-)
-
- 2015-09-01 Sergio Durigan Junior <sergiodj@redhat.com>
-Index: gdb-7.10/gdb/solib-svr4.c
-===================================================================
---- gdb-7.10.orig/gdb/solib-svr4.c
-+++ gdb-7.10/gdb/solib-svr4.c
-@@ -1782,7 +1782,7 @@ static enum probe_action
- solib_event_probe_action (struct probe_and_action *pa)
- {
- enum probe_action action;
-- unsigned probe_argc;
-+ unsigned probe_argc = 0;
- struct frame_info *frame = get_current_frame ();
-
- action = pa->action;
diff --git a/gdb-rhbz1260558-ppc64le-skip_trampoline_code.patch b/gdb-rhbz1260558-ppc64le-skip_trampoline_code.patch
deleted file mode 100644
index cdbbd6a..0000000
--- a/gdb-rhbz1260558-ppc64le-skip_trampoline_code.patch
+++ /dev/null
@@ -1,257 +0,0 @@
-http://sourceware.org/ml/gdb-patches/2015-09/msg00183.html
-Subject: [ppc64le patch v3] Use skip_entrypoint for skip_trampoline_code
-
-
---mYCpIKhGyMATD0i+
-Content-Type: text/plain; charset=us-ascii
-Content-Disposition: inline
-
-An update to PASS the testcase on non-ppc64le archs.
-
---mYCpIKhGyMATD0i+
-Content-Type: text/plain; charset=us-ascii
-Content-Disposition: inline; filename=4
-
-gdb/ChangeLog
-2015-09-07 Jan Kratochvil <jan.kratochvil@redhat.com>
-
- * linespec.c (minsym_found): Call gdbarch_skip_entrypoint.
- * ppc64-tdep.c (ppc64_skip_trampoline_code): Rename to ...
- (ppc64_skip_trampoline_code_1): ... here.
- (ppc64_skip_trampoline_code): New wrapper function.
- * symtab.c (find_function_start_sal): Call gdbarch_skip_entrypoint.
-
-gdb/testsuite/ChangeLog
-2015-09-07 Jan Kratochvil <jan.kratochvil@redhat.com>
-
- * gdb.opt/solib-intra-step-lib.c: New file.
- * gdb.opt/solib-intra-step-main.c: New file.
- * gdb.opt/solib-intra-step.exp: New file.
-
-diff --git a/gdb/linespec.c b/gdb/linespec.c
-index 8f102fa..4c29c12 100644
---- a/gdb/linespec.c
-+++ b/gdb/linespec.c
-@@ -3570,6 +3570,8 @@ minsym_found (struct linespec_state *self, struct objfile *objfile,
- sal.pc = MSYMBOL_VALUE_ADDRESS (objfile, msymbol);
- sal.pc = gdbarch_convert_from_func_ptr_addr (gdbarch, sal.pc,
- ¤t_target);
-+ if (gdbarch_skip_entrypoint_p (gdbarch))
-+ sal.pc = gdbarch_skip_entrypoint (gdbarch, sal.pc);
- }
- else
- skip_prologue_sal (&sal);
-diff --git a/gdb/ppc64-tdep.c b/gdb/ppc64-tdep.c
-index bb23b6a..4a0b93a 100644
---- a/gdb/ppc64-tdep.c
-+++ b/gdb/ppc64-tdep.c
-@@ -454,8 +454,8 @@ ppc64_standard_linkage4_target (struct frame_info *frame,
- When the execution direction is EXEC_REVERSE, scan backward to
- check whether we are in the middle of a PLT stub. */
-
--CORE_ADDR
--ppc64_skip_trampoline_code (struct frame_info *frame, CORE_ADDR pc)
-+static CORE_ADDR
-+ppc64_skip_trampoline_code_1 (struct frame_info *frame, CORE_ADDR pc)
- {
- #define MAX(a,b) ((a) > (b) ? (a) : (b))
- unsigned int insns[MAX (MAX (MAX (ARRAY_SIZE (ppc64_standard_linkage1),
-@@ -530,6 +530,20 @@ ppc64_skip_trampoline_code (struct frame_info *frame, CORE_ADDR pc)
- return 0;
- }
-
-+/* Wrapper of ppc64_skip_trampoline_code_1 checking also
-+ ppc_elfv2_skip_entrypoint. */
-+
-+CORE_ADDR
-+ppc64_skip_trampoline_code (struct frame_info *frame, CORE_ADDR pc)
-+{
-+ struct gdbarch *gdbarch = get_frame_arch (frame);
-+
-+ pc = ppc64_skip_trampoline_code_1 (frame, pc);
-+ if (pc != 0 && gdbarch_skip_entrypoint_p (gdbarch))
-+ pc = gdbarch_skip_entrypoint (gdbarch, pc);
-+ return pc;
-+}
-+
- /* Support for convert_from_func_ptr_addr (ARCH, ADDR, TARG) on PPC64
- GNU/Linux.
-
-diff --git a/gdb/symtab.c b/gdb/symtab.c
-index 1ba691e..f65e809 100644
---- a/gdb/symtab.c
-+++ b/gdb/symtab.c
-@@ -3629,7 +3629,11 @@ find_function_start_sal (struct symbol *sym, int funfirstline)
- && (COMPUNIT_LOCATIONS_VALID (SYMTAB_COMPUNIT (sal.symtab))
- || SYMTAB_LANGUAGE (sal.symtab) == language_asm))
- {
-+ struct gdbarch *gdbarch = symbol_arch (sym);
-+
- sal.pc = BLOCK_START (SYMBOL_BLOCK_VALUE (sym));
-+ if (gdbarch_skip_entrypoint_p (gdbarch))
-+ sal.pc = gdbarch_skip_entrypoint (gdbarch, sal.pc);
- return sal;
- }
-
-diff --git a/gdb/testsuite/gdb.opt/solib-intra-step-lib.c b/gdb/testsuite/gdb.opt/solib-intra-step-lib.c
-new file mode 100644
-index 0000000..9ab1211
---- /dev/null
-+++ b/gdb/testsuite/gdb.opt/solib-intra-step-lib.c
-@@ -0,0 +1,30 @@
-+/* This testcase is part of GDB, the GNU debugger.
-+
-+ Copyright 2015 Free Software Foundation, Inc.
-+
-+ This program is free software; you can redistribute it and/or modify
-+ it under the terms of the GNU General Public License as published by
-+ the Free Software Foundation; either version 3 of the License, or
-+ (at your option) any later version.
-+
-+ This program is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ GNU General Public License for more details.
-+
-+ You should have received a copy of the GNU General Public License
-+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
-+
-+#include <stdlib.h>
-+
-+void
-+shlib_second (int dummy)
-+{ /* second-retry */
-+ abort (); /* second-hit */
-+}
-+
-+void
-+shlib_first (void)
-+{ /* first-retry */
-+ shlib_second (0); /* first-hit */
-+}
-diff --git a/gdb/testsuite/gdb.opt/solib-intra-step-main.c b/gdb/testsuite/gdb.opt/solib-intra-step-main.c
-new file mode 100644
-index 0000000..186bd5f
---- /dev/null
-+++ b/gdb/testsuite/gdb.opt/solib-intra-step-main.c
-@@ -0,0 +1,25 @@
-+/* This testcase is part of GDB, the GNU debugger.
-+
-+ Copyright 2015 Free Software Foundation, Inc.
-+
-+ This program is free software; you can redistribute it and/or modify
-+ it under the terms of the GNU General Public License as published by
-+ the Free Software Foundation; either version 3 of the License, or
-+ (at your option) any later version.
-+
-+ This program is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ GNU General Public License for more details.
-+
-+ You should have received a copy of the GNU General Public License
-+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
-+
-+extern void shlib_first (void);
-+
-+int
-+main (void)
-+{
-+ shlib_first ();
-+ return 0;
-+}
-diff --git a/gdb/testsuite/gdb.opt/solib-intra-step.exp b/gdb/testsuite/gdb.opt/solib-intra-step.exp
-new file mode 100644
-index 0000000..044c4bd
---- /dev/null
-+++ b/gdb/testsuite/gdb.opt/solib-intra-step.exp
-@@ -0,0 +1,86 @@
-+# Copyright 2015 Free Software Foundation, Inc.
-+
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 3 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program. If not, see <http://www.gnu.org/licenses/>.
-+
-+standard_testfile
-+
-+if {[skip_shlib_tests]} {
-+ return 0
-+}
-+
-+# Library file.
-+set libname "${testfile}-lib"
-+set srcfile_lib ${srcdir}/${subdir}/${libname}.c
-+set binfile_lib [standard_output_file ${libname}.so]
-+set lib_flags [list debug optimize=-O2]
-+# Binary file.
-+set testfile "${testfile}-main"
-+set srcfile ${srcdir}/${subdir}/${testfile}.c
-+set binfile [standard_output_file ${testfile}]
-+set bin_flags [list debug shlib=${binfile_lib}]
-+
-+if [get_compiler_info] {
-+ return -1
-+}
-+
-+if { [gdb_compile_shlib ${srcfile_lib} ${binfile_lib} $lib_flags] != ""
-+ || [gdb_compile ${srcfile} ${binfile} executable $bin_flags] != "" } {
-+ untested "Could not compile $binfile_lib or $binfile."
-+ return -1
-+}
-+
-+clean_restart ${binfile}
-+gdb_load_shlibs $binfile_lib
-+
-+if ![runto_main] then {
-+ return 0
-+}
-+
-+set test "first-hit"
-+gdb_test_multiple "step" $test {
-+ -re " first-hit .*\r\n$gdb_prompt $" {
-+ pass $test
-+ }
-+ -re " first-retry .*\r\n$gdb_prompt $" {
-+ gdb_test "step" " first-hit .*" "first-hit (optimized)"
-+ }
-+}
-+
-+set test "second-hit"
-+gdb_test_multiple "step" $test {
-+ -re " second-hit .*\r\n$gdb_prompt $" {
-+ pass $test
-+ }
-+ -re " first-retry .*\r\n$gdb_prompt $" {
-+ set test "second-hit (optimized 1)"
-+ gdb_test_multiple "step" $test {
-+ -re " second-hit .*\r\n$gdb_prompt $" {
-+ pass $test
-+ }
-+ -re " first-hit .*\r\n$gdb_prompt $" {
-+ gdb_test "step" " second-hit .*" "second-hit (optimized 2)"
-+ }
-+ }
-+ }
-+ -re " second-retry .*\r\n$gdb_prompt $" {
-+ gdb_test "step" " second-hit .*" "second-hit (optimized 3)"
-+ }
-+}
-+
-+if ![runto_main] then {
-+ return 0
-+}
-+
-+gdb_breakpoint "shlib_second"
-+gdb_continue_to_breakpoint "second-hit" ".* (second-hit|second-retry) .*"
-
---mYCpIKhGyMATD0i+--
-
diff --git a/gdb-rhbz1270564-invalid-dwarf-regno.patch b/gdb-rhbz1270564-invalid-dwarf-regno.patch
deleted file mode 100644
index a51caaf..0000000
--- a/gdb-rhbz1270564-invalid-dwarf-regno.patch
+++ /dev/null
@@ -1,220 +0,0 @@
-http://sourceware.org/ml/gdb-patches/2015-10/msg00166.html
-Subject: [patch] Fix internal error on DW_OP_bregx(-1)
-
-
---ibTvN161/egqYuK8
-Content-Type: text/plain; charset=us-ascii
-Content-Disposition: inline
-
-Hi,
-
-https://bugzilla.redhat.com/show_bug.cgi?id=1270564#c15
-https://bugzilla.redhat.com/attachment.cgi?id=1081772
-
-clang-3.5.0-9.fc22.x86_64
- <3><22b2>: Abbrev Number: 69 (DW_TAG_variable)
- <22b3> DW_AT_location : 7 byte block: 92 ff ff ff ff f 0 (DW_OP_bregx: 4294967295 (r-1) 0)
- <22bb> DW_AT_name : (indirect string, offset: 0x2a36): texture_data
- <22c1> DW_AT_type : <0x1d3>
-
-(gdb) p variable
-warning: Unmapped DWARF Register #-1 encountered.
-regcache.c:177: internal-error: register_size: Assertion `regnum >= 0 && regnum < (gdbarch_num_regs (gdbarch) + gdbarch_num_pseudo_regs (gdbarch))' failed.
-[...]
-Quit this debugging session? (y or n) FAIL: gdb.dwarf2/dw2-regno-invalid.exp: p variable (GDB internal error)
-
--> (x86_64)
-(gdb) p variable
-warning: Unmapped DWARF Register #-1 encountered.
-Invalid register #-1, expecting 0 <= # < 220
-(gdb) PASS: gdb.dwarf2/dw2-regno-invalid.exp: p variable
--> (i386)
-(gdb) p variable
-Invalid register #104, expecting 0 <= # < 104
-(gdb) PASS: gdb.dwarf2/dw2-regno-invalid.exp: p variable
-
-GDB calls gdbarch_dwarf2_reg_to_regnum() first which returns -1 in the x86_64
-case
- if (regnum == -1)
- warning (_("Unmapped DWARF Register #%d encountered."), reg);
-but in i386 case it does:
- /* This will hopefully provoke a warning. */
- return gdbarch_num_regs (gdbarch) + gdbarch_num_pseudo_regs (gdbarch);
-and the default implementation is a nop, leaving whatever register number
-the DWARF specified.
-
-No regressions on {x86_64,x86_64-m32,i686}-fedorarawhide-linux-gnu.
-
-
-Jan
-
---ibTvN161/egqYuK8
-Content-Type: text/plain; charset=us-ascii
-Content-Disposition: inline; filename="undefreg.patch"
-
-gdb/ChangeLog
-2015-10-12 Jan Kratochvil <jan.kratochvil@redhat.com>
-
- * findvar.c (address_from_register): Check REGNUM validity.
-
-gdb/testsuite/ChangeLog
-2015-10-12 Jan Kratochvil <jan.kratochvil@redhat.com>
-
- * gdb.dwarf2/dw2-regno-invalid.S: New file.
- * gdb.dwarf2/dw2-regno-invalid.exp: New file.
-
-diff --git a/gdb/findvar.c b/gdb/findvar.c
-index 0f46e53..855947d 100644
---- a/gdb/findvar.c
-+++ b/gdb/findvar.c
-@@ -927,6 +927,12 @@ address_from_register (int regnum, struct frame_info *frame)
- struct type *type = builtin_type (gdbarch)->builtin_data_ptr;
- struct value *value;
- CORE_ADDR result;
-+ int regnum_max_excl = (gdbarch_num_regs (gdbarch)
-+ + gdbarch_num_pseudo_regs (gdbarch));
-+
-+ if (regnum < 0 || regnum >= regnum_max_excl)
-+ error (_("Invalid register #%d, expecting 0 <= # < %d"), regnum,
-+ regnum_max_excl);
-
- /* This routine may be called during early unwinding, at a time
- where the ID of FRAME is not yet known. Calling value_from_register
-diff --git a/gdb/testsuite/gdb.dwarf2/dw2-regno-invalid.S b/gdb/testsuite/gdb.dwarf2/dw2-regno-invalid.S
-new file mode 100644
-index 0000000..075bfd6
---- /dev/null
-+++ b/gdb/testsuite/gdb.dwarf2/dw2-regno-invalid.S
-@@ -0,0 +1,91 @@
-+/* Copyright 2015 Free Software Foundation, Inc.
-+
-+ This program is free software; you can redistribute it and/or modify
-+ it under the terms of the GNU General Public License as published by
-+ the Free Software Foundation; either version 3 of the License, or
-+ (at your option) any later version.
-+
-+ This program is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ GNU General Public License for more details.
-+
-+ You should have received a copy of the GNU General Public License
-+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
-+
-+ .section .debug_info
-+debug_start:
-+ .4byte debug_end - 1f /* Length of Compilation Unit Info */
-+1:
-+ .2byte 0x3 /* DWARF version number */
-+ .4byte .Ldebug_abbrev0 /* Offset Into Abbrev. Section */
-+ .byte 0x4 /* Pointer Size (in bytes) */
-+ .uleb128 0x1 /* (DIE (0xb) DW_TAG_compile_unit) */
-+ .ascii "clang-3.5.0-9.fc22.x86_64\0" /* DW_AT_producer */
-+ .byte 0x1 /* DW_AT_language */
-+ .ascii "1.c\0" /* DW_AT_name */
-+ .4byte main_label /* DW_AT_low_pc */
-+ .4byte main_label+0x10000 /* DW_AT_high_pc */
-+
-+ .uleb128 2 /* Abbrev: DW_TAG_subprogram */
-+ .byte 1 /* DW_AT_external */
-+ .ascii "main\0" /* DW_AT_name */
-+ .4byte main_label /* DW_AT_low_pc */
-+ .4byte main_label+0x10000 /* DW_AT_high_pc */
-+
-+ .uleb128 0x4 /* (DW_TAG_variable) */
-+ .ascii "variable\0" /* DW_AT_name */
-+ .2byte 2f - 1f /* DW_AT_location: DW_FORM_block2 */
-+1:
-+ .byte 0x92 /* DW_OP_bregx */
-+ .uleb128 0xffffffff
-+ .sleb128 0
-+2:
-+
-+ .byte 0x0 /* end of children of main */
-+ .byte 0x0 /* end of children of CU */
-+debug_end:
-+
-+ .section .debug_abbrev
-+.Ldebug_abbrev0:
-+ .uleb128 0x1 /* (abbrev code) */
-+ .uleb128 0x11 /* (TAG: DW_TAG_compile_unit) */
-+ .byte 0x1 /* DW_children_yes */
-+ .uleb128 0x25 /* (DW_AT_producer) */
-+ .uleb128 0x8 /* (DW_FORM_string) */
-+ .uleb128 0x13 /* (DW_AT_language) */
-+ .uleb128 0xb /* (DW_FORM_data1) */
-+ .uleb128 0x3 /* (DW_AT_name) */
-+ .uleb128 0x8 /* (DW_FORM_string) */
-+ .uleb128 0x11 /* DW_AT_low_pc */
-+ .uleb128 0x1 /* DW_FORM_addr */
-+ .uleb128 0x12 /* DW_AT_high_pc */
-+ .uleb128 0x1 /* DW_FORM_addr */
-+ .byte 0x0
-+ .byte 0x0
-+
-+ .uleb128 2 /* Abbrev code */
-+ .uleb128 0x2e /* DW_TAG_subprogram */
-+ .byte 1 /* has_children */
-+ .uleb128 0x3f /* DW_AT_external */
-+ .uleb128 0xc /* DW_FORM_flag */
-+ .uleb128 0x3 /* DW_AT_name */
-+ .uleb128 0x8 /* DW_FORM_string */
-+ .uleb128 0x11 /* DW_AT_low_pc */
-+ .uleb128 0x1 /* DW_FORM_addr */
-+ .uleb128 0x12 /* DW_AT_high_pc */
-+ .uleb128 0x1 /* DW_FORM_addr */
-+ .byte 0x0 /* Terminator */
-+ .byte 0x0 /* Terminator */
-+
-+
-+ .uleb128 0x4 /* (abbrev code) */
-+ .uleb128 0x34 /* (TAG: DW_TAG_variable) */
-+ .byte 0x0 /* DW_children_yes */
-+ .uleb128 0x3 /* (DW_AT_name) */
-+ .uleb128 0x8 /* (DW_FORM_string) */
-+ .uleb128 0x02 /* (DW_AT_location) */
-+ .uleb128 0x3 /* (DW_FORM_block2) */
-+ .byte 0x0
-+ .byte 0x0
-+ .byte 0x0
-diff --git a/gdb/testsuite/gdb.dwarf2/dw2-regno-invalid.exp b/gdb/testsuite/gdb.dwarf2/dw2-regno-invalid.exp
-new file mode 100644
-index 0000000..7c3a404
---- /dev/null
-+++ b/gdb/testsuite/gdb.dwarf2/dw2-regno-invalid.exp
-@@ -0,0 +1,32 @@
-+# Copyright 2015 Free Software Foundation, Inc.
-+
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 3 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program. If not, see <http://www.gnu.org/licenses/>.
-+load_lib dwarf.exp
-+
-+# This test can only be run on targets which support DWARF-2 and use gas.
-+if {![dwarf2_support]} {
-+ return 0
-+}
-+
-+standard_testfile .S main.c
-+
-+if { [gdb_compile "${srcdir}/${subdir}/${srcfile} ${srcdir}/${subdir}/${srcfile2}" \
-+ "${binfile}" executable {}] != "" } {
-+ return -1
-+}
-+
-+clean_restart ${binfile}
-+runto_main
-+
-+gdb_test "p variable"
-
---ibTvN161/egqYuK8--
-
diff --git a/gdb-rhbz795424-bitpos-20of25.patch b/gdb-rhbz795424-bitpos-20of25.patch
index dbc8579..6037e0e 100644
--- a/gdb-rhbz795424-bitpos-20of25.patch
+++ b/gdb-rhbz795424-bitpos-20of25.patch
@@ -463,11 +463,11 @@ Content-Type: text/x-patch
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename=bitpos-main.patch
-Index: gdb-7.9.90.20150709/gdb/ada-lang.c
+Index: gdb-7.10.50.20151027/gdb/ada-lang.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/ada-lang.c 2015-07-09 18:24:38.968355881 +0200
-+++ gdb-7.9.90.20150709/gdb/ada-lang.c 2015-07-09 18:24:42.219383612 +0200
-@@ -74,7 +74,7 @@ static struct type *desc_bounds_type (st
+--- gdb-7.10.50.20151027.orig/gdb/ada-lang.c 2015-11-02 21:23:11.175351410 +0100
++++ gdb-7.10.50.20151027/gdb/ada-lang.c 2015-11-02 21:23:13.197364714 +0100
+@@ -75,7 +75,7 @@ static struct type *desc_bounds_type (st
static struct value *desc_bounds (struct value *);
@@ -476,7 +476,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
static int fat_pntr_bounds_bitsize (struct type *);
-@@ -82,13 +82,13 @@ static struct type *desc_data_target_typ
+@@ -83,13 +83,13 @@ static struct type *desc_data_target_typ
static struct value *desc_data (struct value *);
@@ -492,7 +492,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
static int desc_bound_bitsize (struct type *, int, int);
-@@ -168,7 +168,7 @@ static struct type *static_unwrap_type (
+@@ -172,7 +172,7 @@ static struct type *static_unwrap_type (
static struct value *unwrap_value (struct value *);
@@ -501,7 +501,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
static struct type *decode_constrained_packed_array_type (struct type *);
-@@ -183,7 +183,8 @@ static int ada_is_unconstrained_packed_a
+@@ -187,7 +187,8 @@ static int ada_is_unconstrained_packed_a
static struct value *value_subscript_packed (struct value *, int,
struct value **);
@@ -511,12 +511,12 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
static struct value *coerce_unspec_val_to_type (struct value *,
struct type *);
-@@ -211,14 +212,14 @@ static struct value *value_val_atr (stru
+@@ -215,14 +216,14 @@ static struct value *value_val_atr (stru
static struct symbol *standard_lookup (const char *, const struct block *,
domain_enum);
--static struct value *ada_search_struct_field (char *, struct value *, int,
-+static struct value *ada_search_struct_field (char *, struct value *, LONGEST,
+-static struct value *ada_search_struct_field (const char *, struct value *, int,
++static struct value *ada_search_struct_field (const char *, struct value *, LONGEST,
struct type *);
-static struct value *ada_value_primitive_field (struct value *, int, int,
@@ -526,11 +526,11 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
-static int find_struct_field (const char *, struct type *, int,
- struct type **, int *, int *, int *, int *);
+static int find_struct_field (const char *, struct type *, LONGEST,
-+ struct type **, LONGEST *, int *, int *, int *);
++ struct type **, LONGEST *, int *, int *, int *);
static struct value *ada_to_fixed_value_create (struct type *, CORE_ADDR,
struct value *);
-@@ -232,7 +233,7 @@ static int ada_is_direct_array_type (str
+@@ -236,7 +237,7 @@ static int ada_is_direct_array_type (str
static void ada_language_arch_info (struct gdbarch *,
struct language_arch_info *);
@@ -539,7 +539,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
struct type *);
static struct value *assign_aggregate (struct value *, struct value *,
-@@ -695,7 +696,7 @@ coerce_unspec_val_to_type (struct value
+@@ -700,7 +701,7 @@ coerce_unspec_val_to_type (struct value
}
static const gdb_byte *
@@ -548,7 +548,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
{
if (valaddr == NULL)
return NULL;
-@@ -704,7 +705,7 @@ cond_offset_host (const gdb_byte *valadd
+@@ -709,7 +710,7 @@ cond_offset_host (const gdb_byte *valadd
}
static CORE_ADDR
@@ -557,7 +557,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
{
if (address == 0)
return 0;
-@@ -1711,7 +1712,7 @@ desc_bounds (struct value *arr)
+@@ -1717,7 +1718,7 @@ desc_bounds (struct value *arr)
/* If TYPE is the type of an array-descriptor (fat pointer), the bit
position of the field containing the address of the bounds data. */
@@ -566,7 +566,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
fat_pntr_bounds_bitpos (struct type *type)
{
return TYPE_FIELD_BITPOS (desc_base_type (type), 1);
-@@ -1777,7 +1778,7 @@ desc_data (struct value *arr)
+@@ -1783,7 +1784,7 @@ desc_data (struct value *arr)
/* If TYPE is the type of an array-descriptor (fat pointer), the bit
position of the field containing the address of the data. */
@@ -575,7 +575,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
fat_pntr_data_bitpos (struct type *type)
{
return TYPE_FIELD_BITPOS (desc_base_type (type), 0);
-@@ -1812,7 +1813,7 @@ desc_one_bound (struct value *bounds, in
+@@ -1818,7 +1819,7 @@ desc_one_bound (struct value *bounds, in
of the Ith lower bound stored in it, if WHICH is 0, and the Ith upper
bound, if WHICH is 1. The first bound is I=1. */
@@ -584,7 +584,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
desc_bound_bitpos (struct type *type, int i, int which)
{
return TYPE_FIELD_BITPOS (desc_base_type (type), 2 * i + which - 2);
-@@ -2002,7 +2003,7 @@ ada_type_of_array (struct value *arr, in
+@@ -2008,7 +2009,7 @@ ada_type_of_array (struct value *arr, in
zero, and does not need to be recomputed. */
if (lo < hi)
{
@@ -593,7 +593,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
(hi - lo + 1) * TYPE_FIELD_BITSIZE (elt_type, 0);
TYPE_LENGTH (array_type) = (array_bitsize + 7) / 8;
-@@ -2162,7 +2163,7 @@ decode_packed_array_bitsize (struct type
+@@ -2168,7 +2169,7 @@ decode_packed_array_bitsize (struct type
the length is arbitrary. */
static struct type *
@@ -602,7 +602,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
{
struct type *new_elt_type;
struct type *new_type;
-@@ -2216,7 +2217,7 @@ decode_constrained_packed_array_type (st
+@@ -2222,7 +2223,7 @@ decode_constrained_packed_array_type (st
char *name;
const char *tail;
struct type *shadow_type;
@@ -611,7 +611,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
if (!raw_name)
raw_name = ada_type_name (desc_base_type (type));
-@@ -2287,7 +2288,8 @@ decode_constrained_packed_array (struct
+@@ -2293,7 +2294,8 @@ decode_constrained_packed_array (struct
array with no wrapper. In order to interpret the value through
the (left-justified) packed array type we just built, we must
first left-justify it. */
@@ -621,7 +621,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
ULONGEST mod;
mod = ada_modulus (value_type (arr)) - 1;
-@@ -2388,15 +2390,16 @@ has_negatives (struct type *type)
+@@ -2521,7 +2523,7 @@ ada_unpack_from_contents (const gdb_byte
struct value *
ada_value_primitive_packed_val (struct value *obj, const gdb_byte *valaddr,
@@ -630,21 +630,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
struct type *type)
{
struct value *v;
-- int src, /* Index into the source area */
-- targ, /* Index into the target area */
-- srcBitsLeft, /* Number of source bits left to move */
-- nsrc, ntarg, /* Number of source and target bytes */
-- unusedLS, /* Number of bits in next significant
-+ int src; /* Index into the source area */
-+ LONGEST targ; /* Index into the target area */
-+ int srcBitsLeft, /* Number of source bits left to move */
-+ nsrc; /* Number of source bytes */
-+ LONGEST ntarg; /* Number of target bytes */
-+ int unusedLS, /* Number of bits in next significant
- byte of source that are unused */
- accumSize; /* Number of meaningful bits in accum */
- unsigned char *bytes; /* First byte containing data to unpack */
-@@ -2441,7 +2444,7 @@ ada_value_primitive_packed_val (struct v
+@@ -2594,7 +2596,7 @@ ada_value_primitive_packed_val (struct v
if (obj != NULL)
{
@@ -653,7 +639,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
set_value_component_location (v, obj);
set_value_bitpos (v, bit_offset + value_bitpos (obj));
-@@ -2562,7 +2565,7 @@ ada_value_primitive_packed_val (struct v
+@@ -2642,7 +2644,7 @@ ada_value_primitive_packed_val (struct v
not overlap. */
static void
move_bits (gdb_byte *target, int targ_offset, const gdb_byte *source,
@@ -662,16 +648,16 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
{
unsigned int accum, mask;
int accum_bits, chunk_size;
-@@ -2652,7 +2655,7 @@ ada_value_assign (struct value *toval, s
+@@ -2732,7 +2734,7 @@ ada_value_assign (struct value *toval, s
{
int len = (value_bitpos (toval)
+ bits + HOST_CHAR_BIT - 1) / HOST_CHAR_BIT;
- int from_size;
+ LONGEST from_size;
- gdb_byte *buffer = alloca (len);
+ gdb_byte *buffer = (gdb_byte *) alloca (len);
struct value *val;
CORE_ADDR to_addr = value_address (toval);
-@@ -2703,7 +2706,7 @@ value_assign_to_component (struct value
+@@ -2783,7 +2785,7 @@ value_assign_to_component (struct value
(LONGEST) (value_address (component) - value_address (container));
int bit_offset_in_container =
value_bitpos (component) - value_bitpos (container);
@@ -680,7 +666,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
val = value_cast (value_type (component), val);
-@@ -4294,7 +4297,7 @@ ensure_lval (struct value *val)
+@@ -4392,7 +4394,7 @@ ensure_lval (struct value *val)
if (VALUE_LVAL (val) == not_lval
|| VALUE_LVAL (val) == lval_internalvar)
{
@@ -689,16 +675,16 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
const CORE_ADDR addr =
value_as_long (value_allocate_space_in_inferior (len));
-@@ -4378,7 +4381,7 @@ static CORE_ADDR
+@@ -4476,7 +4478,7 @@ static CORE_ADDR
value_pointer (struct value *value, struct type *type)
{
struct gdbarch *gdbarch = get_type_arch (type);
- unsigned len = TYPE_LENGTH (type);
+ ULONGEST len = TYPE_LENGTH (type);
- gdb_byte *buf = alloca (len);
+ gdb_byte *buf = (gdb_byte *) alloca (len);
CORE_ADDR addr;
-@@ -6521,7 +6524,7 @@ value_tag_from_contents_and_address (str
+@@ -6711,7 +6713,7 @@ value_tag_from_contents_and_address (str
const gdb_byte *valaddr,
CORE_ADDR address)
{
@@ -707,7 +693,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
struct type *tag_type;
if (find_struct_field ("_tag", type, 0, &tag_type, &tag_byte_offset,
-@@ -6991,7 +6994,7 @@ ada_in_variant (LONGEST val, struct type
+@@ -7181,7 +7183,7 @@ ada_in_variant (LONGEST val, struct type
only in that it can handle packed values of arbitrary type. */
static struct value *
@@ -716,7 +702,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
struct type *arg_type)
{
struct type *type;
-@@ -7003,7 +7006,7 @@ ada_value_primitive_field (struct value
+@@ -7193,7 +7195,7 @@ ada_value_primitive_field (struct value
if (TYPE_FIELD_BITSIZE (arg_type, fieldno) != 0)
{
@@ -725,7 +711,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
int bit_size = TYPE_FIELD_BITSIZE (arg_type, fieldno);
return ada_value_primitive_packed_val (arg1, value_contents (arg1),
-@@ -7030,9 +7033,9 @@ ada_value_primitive_field (struct value
+@@ -7220,9 +7222,9 @@ ada_value_primitive_field (struct value
Returns 1 if found, 0 otherwise. */
static int
@@ -737,7 +723,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
int *index_p)
{
int i;
-@@ -7050,8 +7053,8 @@ find_struct_field (const char *name, str
+@@ -7240,8 +7242,8 @@ find_struct_field (const char *name, str
for (i = 0; i < TYPE_NFIELDS (type); i += 1)
{
@@ -748,16 +734,16 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
const char *t_field_name = TYPE_FIELD_NAME (type, i);
if (t_field_name == NULL)
-@@ -7121,7 +7124,7 @@ num_visible_fields (struct type *type)
+@@ -7311,7 +7313,7 @@ num_visible_fields (struct type *type)
Searches recursively through wrapper fields (e.g., '_parent'). */
static struct value *
--ada_search_struct_field (char *name, struct value *arg, int offset,
-+ada_search_struct_field (char *name, struct value *arg, LONGEST offset,
+-ada_search_struct_field (const char *name, struct value *arg, int offset,
++ada_search_struct_field (const char *name, struct value *arg, LONGEST offset,
struct type *type)
{
int i;
-@@ -7154,7 +7157,7 @@ ada_search_struct_field (char *name, str
+@@ -7344,7 +7346,7 @@ ada_search_struct_field (const char *nam
int j;
struct type *field_type = ada_check_typedef (TYPE_FIELD_TYPE (type,
i));
@@ -766,7 +752,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
for (j = 0; j < TYPE_NFIELDS (field_type); j += 1)
{
-@@ -7172,8 +7175,8 @@ ada_search_struct_field (char *name, str
+@@ -7362,8 +7364,8 @@ ada_search_struct_field (const char *nam
return NULL;
}
@@ -777,7 +763,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
/* Return field #INDEX in ARG, where the index is that returned by
-@@ -7182,7 +7185,7 @@ static struct value *ada_index_struct_fi
+@@ -7372,7 +7374,7 @@ static struct value *ada_index_struct_fi
* If found, return value, else return NULL. */
static struct value *
@@ -786,7 +772,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
struct type *type)
{
return ada_index_struct_field_1 (&index, arg, offset, type);
-@@ -7194,7 +7197,7 @@ ada_index_struct_field (int index, struc
+@@ -7384,7 +7386,7 @@ ada_index_struct_field (int index, struc
* *INDEX_P. */
static struct value *
@@ -795,7 +781,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
struct type *type)
{
int i;
-@@ -7284,7 +7287,8 @@ ada_value_struct_elt (struct value *arg,
+@@ -7474,7 +7476,8 @@ ada_value_struct_elt (struct value *arg,
v = ada_search_struct_field (name, arg, 0, t);
else
{
@@ -805,7 +791,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
struct type *field_type;
CORE_ADDR address;
-@@ -7601,8 +7605,8 @@ ada_coerce_ref (struct value *val0)
+@@ -7791,8 +7794,8 @@ ada_coerce_ref (struct value *val0)
/* Return OFF rounded upward if necessary to a multiple of
ALIGNMENT (a power of 2). */
@@ -816,7 +802,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
{
return (off + alignment - 1) & ~(alignment - 1);
}
-@@ -7996,10 +8000,9 @@ ada_template_to_fixed_record_type_1 (str
+@@ -8186,10 +8189,9 @@ ada_template_to_fixed_record_type_1 (str
struct value *mark = value_mark ();
struct value *dval;
struct type *rtype;
@@ -829,7 +815,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
int f;
/* Compute the number of fields in this record type that are going
-@@ -8077,7 +8080,7 @@ ada_template_to_fixed_record_type_1 (str
+@@ -8267,7 +8269,7 @@ ada_template_to_fixed_record_type_1 (str
that follow this one. */
if (ada_is_aligner_type (field_type))
{
@@ -838,7 +824,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
field_valaddr = cond_offset_host (field_valaddr, field_offset);
field_address = cond_offset_target (field_address, field_offset);
-@@ -8213,11 +8216,11 @@ ada_template_to_fixed_record_type_1 (str
+@@ -8403,11 +8405,11 @@ ada_template_to_fixed_record_type_1 (str
if (TYPE_LENGTH (type) <= 0)
{
if (TYPE_NAME (rtype))
@@ -854,7 +840,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
}
else
{
-@@ -8684,7 +8687,8 @@ to_fixed_array_type (struct type *type0,
+@@ -8874,7 +8876,8 @@ to_fixed_array_type (struct type *type0,
type was a regular (non-packed) array type. As a result, the
bitsize of the array elements needs to be set again, and the array
length needs to be recomputed based on that bitsize. */
@@ -864,11 +850,11 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.c
int elt_bitsize = TYPE_FIELD_BITSIZE (type0, 0);
TYPE_FIELD_BITSIZE (result, 0) = TYPE_FIELD_BITSIZE (type0, 0);
-Index: gdb-7.9.90.20150709/gdb/ada-lang.h
+Index: gdb-7.10.50.20151027/gdb/ada-lang.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/ada-lang.h 2015-07-09 18:24:38.969355889 +0200
-+++ gdb-7.9.90.20150709/gdb/ada-lang.h 2015-07-09 18:24:42.219383612 +0200
-@@ -179,7 +179,7 @@ extern void ada_print_type (struct type
+--- gdb-7.10.50.20151027.orig/gdb/ada-lang.h 2015-11-02 21:23:11.177351423 +0100
++++ gdb-7.10.50.20151027/gdb/ada-lang.h 2015-11-02 21:23:13.198364721 +0100
+@@ -168,7 +168,7 @@ extern void ada_print_type (struct type
extern void ada_print_typedef (struct type *type, struct symbol *new_symbol,
struct ui_file *stream);
@@ -877,7 +863,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.h
struct ui_file *, int,
const struct value *,
const struct value_print_options *);
-@@ -194,7 +194,7 @@ extern void ada_emit_char (int, struct t
+@@ -183,7 +183,7 @@ extern void ada_emit_char (int, struct t
extern void ada_printchar (int, struct type *, struct ui_file *);
extern void ada_printstr (struct ui_file *, struct type *, const gdb_byte *,
@@ -886,7 +872,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.h
const struct value_print_options *);
struct value *ada_convert_actual (struct value *actual,
-@@ -265,7 +265,7 @@ extern int ada_is_constrained_packed_arr
+@@ -255,7 +255,7 @@ extern int ada_is_constrained_packed_arr
extern struct value *ada_value_primitive_packed_val (struct value *,
const gdb_byte *,
@@ -895,11 +881,11 @@ Index: gdb-7.9.90.20150709/gdb/ada-lang.h
struct type *);
extern struct type *ada_coerce_to_simple_array_type (struct type *);
-Index: gdb-7.9.90.20150709/gdb/ada-typeprint.c
+Index: gdb-7.10.50.20151027/gdb/ada-typeprint.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/ada-typeprint.c 2015-07-09 18:24:38.969355889 +0200
-+++ gdb-7.9.90.20150709/gdb/ada-typeprint.c 2015-07-09 18:24:42.220383621 +0200
-@@ -886,8 +886,8 @@ ada_print_type (struct type *type0, cons
+--- gdb-7.10.50.20151027.orig/gdb/ada-typeprint.c 2015-11-02 21:23:11.177351423 +0100
++++ gdb-7.10.50.20151027/gdb/ada-typeprint.c 2015-11-02 21:23:13.198364721 +0100
+@@ -891,8 +891,8 @@ ada_print_type (struct type *type0, cons
const char *name = ada_type_name (type);
if (!ada_is_range_type_name (name))
@@ -910,7 +896,7 @@ Index: gdb-7.9.90.20150709/gdb/ada-typeprint.c
else
{
fprintf_filtered (stream, "range ");
-@@ -908,7 +908,8 @@ ada_print_type (struct type *type0, cons
+@@ -913,7 +913,8 @@ ada_print_type (struct type *type0, cons
}
break;
case TYPE_CODE_FLT:
@@ -920,10 +906,10 @@ Index: gdb-7.9.90.20150709/gdb/ada-typeprint.c
break;
case TYPE_CODE_ENUM:
if (show < 0)
-Index: gdb-7.9.90.20150709/gdb/ada-valprint.c
+Index: gdb-7.10.50.20151027/gdb/ada-valprint.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/ada-valprint.c 2015-07-09 18:24:38.970355898 +0200
-+++ gdb-7.9.90.20150709/gdb/ada-valprint.c 2015-07-09 18:24:42.220383621 +0200
+--- gdb-7.10.50.20151027.orig/gdb/ada-valprint.c 2015-11-02 21:23:11.179351436 +0100
++++ gdb-7.10.50.20151027/gdb/ada-valprint.c 2015-11-02 21:23:13.199364728 +0100
@@ -33,11 +33,11 @@
#include "objfiles.h"
@@ -1068,10 +1054,10 @@ Index: gdb-7.9.90.20150709/gdb/ada-valprint.c
struct ui_file *stream, int recurse,
const struct value *val,
const struct value_print_options *options)
-Index: gdb-7.9.90.20150709/gdb/annotate.c
+Index: gdb-7.10.50.20151027/gdb/annotate.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/annotate.c 2015-07-09 18:24:38.971355906 +0200
-+++ gdb-7.9.90.20150709/gdb/annotate.c 2015-07-09 18:24:42.221383629 +0200
+--- gdb-7.10.50.20151027.orig/gdb/annotate.c 2015-11-02 21:23:11.179351436 +0100
++++ gdb-7.10.50.20151027/gdb/annotate.c 2015-11-02 21:23:13.199364728 +0100
@@ -542,21 +542,21 @@ annotate_frame_end (void)
}
\f
@@ -1098,10 +1084,10 @@ Index: gdb-7.9.90.20150709/gdb/annotate.c
}
void
-Index: gdb-7.9.90.20150709/gdb/annotate.h
+Index: gdb-7.10.50.20151027/gdb/annotate.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/annotate.h 2015-07-09 18:24:38.971355906 +0200
-+++ gdb-7.9.90.20150709/gdb/annotate.h 2015-07-09 18:24:42.221383629 +0200
+--- gdb-7.10.50.20151027.orig/gdb/annotate.h 2015-11-02 21:23:11.179351436 +0100
++++ gdb-7.10.50.20151027/gdb/annotate.h 2015-11-02 21:23:13.199364728 +0100
@@ -92,8 +92,8 @@ extern void annotate_frame_source_end (v
extern void annotate_frame_where (void);
extern void annotate_frame_end (void);
@@ -1113,11 +1099,11 @@ Index: gdb-7.9.90.20150709/gdb/annotate.h
extern void annotate_elt_rep_end (void);
extern void annotate_elt (void);
extern void annotate_array_section_end (void);
-Index: gdb-7.9.90.20150709/gdb/arm-linux-nat.c
+Index: gdb-7.10.50.20151027/gdb/arm-linux-nat.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/arm-linux-nat.c 2015-07-09 18:24:38.971355906 +0200
-+++ gdb-7.9.90.20150709/gdb/arm-linux-nat.c 2015-07-09 18:24:42.221383629 +0200
-@@ -1362,7 +1362,7 @@ arm_linux_remove_hw_breakpoint (struct t
+--- gdb-7.10.50.20151027.orig/gdb/arm-linux-nat.c 2015-11-02 21:23:11.180351443 +0100
++++ gdb-7.10.50.20151027/gdb/arm-linux-nat.c 2015-11-02 21:23:13.200364734 +0100
+@@ -1099,7 +1099,7 @@ arm_linux_remove_hw_breakpoint (struct t
ADDR? */
static int
arm_linux_region_ok_for_hw_watchpoint (struct target_ops *self,
@@ -1126,11 +1112,11 @@ Index: gdb-7.9.90.20150709/gdb/arm-linux-nat.c
{
const struct arm_linux_hwbp_cap *cap = arm_linux_get_hwbp_cap ();
CORE_ADDR max_wp_length, aligned_addr;
-Index: gdb-7.9.90.20150709/gdb/ax-gdb.c
+Index: gdb-7.10.50.20151027/gdb/ax-gdb.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/ax-gdb.c 2015-07-09 18:24:38.973355923 +0200
-+++ gdb-7.9.90.20150709/gdb/ax-gdb.c 2015-07-09 18:24:42.222383638 +0200
-@@ -82,12 +82,12 @@ static void gen_traced_pop (struct gdbar
+--- gdb-7.10.50.20151027.orig/gdb/ax-gdb.c 2015-11-02 21:23:11.182351456 +0100
++++ gdb-7.10.50.20151027/gdb/ax-gdb.c 2015-11-02 21:23:13.201364741 +0100
+@@ -83,12 +83,12 @@ static void gen_traced_pop (struct gdbar
static void gen_sign_extend (struct agent_expr *, struct type *);
static void gen_extend (struct agent_expr *, struct type *);
static void gen_fetch (struct agent_expr *, struct type *);
@@ -1145,7 +1131,7 @@ Index: gdb-7.9.90.20150709/gdb/ax-gdb.c
static void gen_sym_offset (struct agent_expr *, struct symbol *);
static void gen_var_ref (struct gdbarch *, struct agent_expr *ax,
struct axs_value *value, struct symbol *var);
-@@ -135,15 +135,16 @@ static void gen_deref (struct agent_expr
+@@ -136,15 +136,16 @@ static void gen_deref (struct agent_expr
static void gen_address_of (struct agent_expr *, struct axs_value *);
static void gen_bitfield_ref (struct expression *exp, struct agent_expr *ax,
struct axs_value *value,
@@ -1165,7 +1151,7 @@ Index: gdb-7.9.90.20150709/gdb/ax-gdb.c
struct type *type);
static void gen_struct_ref (struct expression *exp, struct agent_expr *ax,
struct axs_value *value,
-@@ -538,7 +539,7 @@ gen_fetch (struct agent_expr *ax, struct
+@@ -539,7 +540,7 @@ gen_fetch (struct agent_expr *ax, struct
right shift it by -DISTANCE bits if DISTANCE < 0. This generates
unsigned (logical) right shifts. */
static void
@@ -1174,7 +1160,7 @@ Index: gdb-7.9.90.20150709/gdb/ax-gdb.c
{
if (distance > 0)
{
-@@ -592,7 +593,7 @@ gen_frame_locals_address (struct gdbarch
+@@ -593,7 +594,7 @@ gen_frame_locals_address (struct gdbarch
programming in ML, it would be clearer why these are the same
thing. */
static void
@@ -1183,7 +1169,7 @@ Index: gdb-7.9.90.20150709/gdb/ax-gdb.c
{
/* It would suffice to simply push the offset and add it, but this
makes it easier to read positive and negative offsets in the
-@@ -1248,7 +1249,7 @@ gen_address_of (struct agent_expr *ax, s
+@@ -1249,7 +1250,7 @@ gen_address_of (struct agent_expr *ax, s
static void
gen_bitfield_ref (struct expression *exp, struct agent_expr *ax,
struct axs_value *value, struct type *type,
@@ -1192,7 +1178,7 @@ Index: gdb-7.9.90.20150709/gdb/ax-gdb.c
{
/* Note that ops[i] fetches 8 << i bits. */
static enum agent_op ops[]
-@@ -1283,13 +1284,13 @@ gen_bitfield_ref (struct expression *exp
+@@ -1284,13 +1285,13 @@ gen_bitfield_ref (struct expression *exp
/* The first and one-after-last bits in the field, but rounded down
and up to byte boundaries. */
@@ -1211,7 +1197,7 @@ Index: gdb-7.9.90.20150709/gdb/ax-gdb.c
/* The index in ops of the opcode we're considering. */
int op;
-@@ -1408,7 +1409,7 @@ gen_bitfield_ref (struct expression *exp
+@@ -1409,7 +1410,7 @@ gen_bitfield_ref (struct expression *exp
static void
gen_primitive_field (struct expression *exp,
struct agent_expr *ax, struct axs_value *value,
@@ -1220,7 +1206,7 @@ Index: gdb-7.9.90.20150709/gdb/ax-gdb.c
{
/* Is this a bitfield? */
if (TYPE_FIELD_PACKED (type, fieldno))
-@@ -1433,7 +1434,7 @@ gen_primitive_field (struct expression *
+@@ -1434,7 +1435,7 @@ gen_primitive_field (struct expression *
static int
gen_struct_ref_recursive (struct expression *exp, struct agent_expr *ax,
struct axs_value *value,
@@ -1229,11 +1215,11 @@ Index: gdb-7.9.90.20150709/gdb/ax-gdb.c
{
int i, rslt;
int nbases = TYPE_N_BASECLASSES (type);
-Index: gdb-7.9.90.20150709/gdb/ax-general.c
+Index: gdb-7.10.50.20151027/gdb/ax-general.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/ax-general.c 2015-07-09 18:24:38.973355923 +0200
-+++ gdb-7.9.90.20150709/gdb/ax-general.c 2015-07-09 18:24:42.223383646 +0200
-@@ -193,7 +193,7 @@ ax_zero_ext (struct agent_expr *x, int n
+--- gdb-7.10.50.20151027.orig/gdb/ax-general.c 2015-11-02 21:23:11.182351456 +0100
++++ gdb-7.10.50.20151027/gdb/ax-general.c 2015-11-02 21:23:13.201364741 +0100
+@@ -192,7 +192,7 @@ ax_zero_ext (struct agent_expr *x, int n
/* Append a trace_quick instruction to EXPR, to record N bytes. */
void
@@ -1242,10 +1228,10 @@ Index: gdb-7.9.90.20150709/gdb/ax-general.c
{
/* N must fit in a byte. */
if (n < 0 || n > 255)
-Index: gdb-7.9.90.20150709/gdb/ax.h
+Index: gdb-7.10.50.20151027/gdb/ax.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/ax.h 2015-07-09 18:24:38.973355923 +0200
-+++ gdb-7.9.90.20150709/gdb/ax.h 2015-07-09 18:24:42.223383646 +0200
+--- gdb-7.10.50.20151027.orig/gdb/ax.h 2015-11-02 21:23:11.183351463 +0100
++++ gdb-7.10.50.20151027/gdb/ax.h 2015-11-02 21:23:13.201364741 +0100
@@ -207,7 +207,7 @@ extern void ax_ext (struct agent_expr *E
extern void ax_zero_ext (struct agent_expr *EXPR, int N);
@@ -1255,11 +1241,11 @@ Index: gdb-7.9.90.20150709/gdb/ax.h
/* Append a goto op to EXPR. OP is the actual op (must be aop_goto or
aop_if_goto). We assume we don't know the target offset yet,
-Index: gdb-7.9.90.20150709/gdb/breakpoint.c
+Index: gdb-7.10.50.20151027/gdb/breakpoint.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/breakpoint.c 2015-07-09 18:24:38.977355958 +0200
-+++ gdb-7.9.90.20150709/gdb/breakpoint.c 2015-07-09 18:24:42.227383680 +0200
-@@ -2202,9 +2202,9 @@ should_be_inserted (struct bp_location *
+--- gdb-7.10.50.20151027.orig/gdb/breakpoint.c 2015-11-02 21:23:11.188351496 +0100
++++ gdb-7.10.50.20151027/gdb/breakpoint.c 2015-11-02 21:23:13.205364767 +0100
+@@ -2215,9 +2215,9 @@ should_be_inserted (struct bp_location *
{
fprintf_unfiltered (gdb_stdlog,
"infrun: stepping past non-steppable watchpoint. "
@@ -1271,7 +1257,7 @@ Index: gdb-7.9.90.20150709/gdb/breakpoint.c
}
return 0;
}
-@@ -6995,7 +6995,7 @@ breakpoint_address_match (struct address
+@@ -7053,7 +7053,7 @@ breakpoint_address_match (struct address
static int
breakpoint_address_match_range (struct address_space *aspace1, CORE_ADDR addr1,
@@ -1280,7 +1266,7 @@ Index: gdb-7.9.90.20150709/gdb/breakpoint.c
CORE_ADDR addr2)
{
return ((gdbarch_has_global_breakpoints (target_gdbarch ())
-@@ -11302,7 +11302,7 @@ can_use_hardware_watchpoint (struct valu
+@@ -11387,7 +11387,7 @@ can_use_hardware_watchpoint (struct valu
&& TYPE_CODE (vtype) != TYPE_CODE_ARRAY))
{
CORE_ADDR vaddr = value_address (v);
@@ -1289,11 +1275,11 @@ Index: gdb-7.9.90.20150709/gdb/breakpoint.c
int num_regs;
len = (target_exact_watchpoints
-Index: gdb-7.9.90.20150709/gdb/breakpoint.h
+Index: gdb-7.10.50.20151027/gdb/breakpoint.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/breakpoint.h 2015-07-09 18:24:38.978355966 +0200
-+++ gdb-7.9.90.20150709/gdb/breakpoint.h 2015-07-09 18:24:42.227383680 +0200
-@@ -236,7 +236,7 @@ struct bp_target_info
+--- gdb-7.10.50.20151027.orig/gdb/breakpoint.h 2015-11-02 21:23:11.190351509 +0100
++++ gdb-7.10.50.20151027/gdb/breakpoint.h 2015-11-02 21:23:13.206364773 +0100
+@@ -237,7 +237,7 @@ struct bp_target_info
/* If this is a ranged breakpoint, then this field contains the
length of the range that will be watched for execution. */
@@ -1302,7 +1288,7 @@ Index: gdb-7.9.90.20150709/gdb/breakpoint.h
/* If the breakpoint lives in memory and reading that memory would
give back the breakpoint, instead of the original contents, then
-@@ -412,7 +412,7 @@ struct bp_location
+@@ -413,7 +413,7 @@ struct bp_location
/* For hardware watchpoints, the size of the memory region being
watched. For hardware ranged breakpoints, the size of the
breakpoint range. */
@@ -1311,10 +1297,10 @@ Index: gdb-7.9.90.20150709/gdb/breakpoint.h
/* Type of hardware watchpoint. */
enum target_hw_bp_type watchpoint_type;
-Index: gdb-7.9.90.20150709/gdb/c-lang.c
+Index: gdb-7.10.50.20151027/gdb/c-lang.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/c-lang.c 2015-07-09 18:24:38.979355975 +0200
-+++ gdb-7.9.90.20150709/gdb/c-lang.c 2015-07-09 18:24:42.228383689 +0200
+--- gdb-7.10.50.20151027.orig/gdb/c-lang.c 2015-11-02 21:23:11.190351509 +0100
++++ gdb-7.10.50.20151027/gdb/c-lang.c 2015-11-02 21:23:13.206364773 +0100
@@ -187,7 +187,7 @@ c_printchar (int c, struct type *type, s
void
@@ -1342,10 +1328,10 @@ Index: gdb-7.9.90.20150709/gdb/c-lang.c
if (get_discrete_bounds (TYPE_INDEX_TYPE (expect_type),
&low_bound, &high_bound) < 0)
-Index: gdb-7.9.90.20150709/gdb/c-lang.h
+Index: gdb-7.10.50.20151027/gdb/c-lang.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/c-lang.h 2015-07-09 18:24:38.979355975 +0200
-+++ gdb-7.9.90.20150709/gdb/c-lang.h 2015-07-09 18:24:42.228383689 +0200
+--- gdb-7.10.50.20151027.orig/gdb/c-lang.h 2015-11-02 21:23:11.191351515 +0100
++++ gdb-7.10.50.20151027/gdb/c-lang.h 2015-11-02 21:23:13.206364773 +0100
@@ -74,7 +74,7 @@ extern void c_print_typedef (struct type
struct ui_file *);
@@ -1381,11 +1367,40 @@ Index: gdb-7.9.90.20150709/gdb/c-lang.h
struct ui_file *, int,
const struct value *,
const struct value_print_options *,
-Index: gdb-7.9.90.20150709/gdb/c-valprint.c
+Index: gdb-7.10.50.20151027/gdb/c-valprint.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/c-valprint.c 2015-07-09 18:24:38.979355975 +0200
-+++ gdb-7.9.90.20150709/gdb/c-valprint.c 2015-07-09 18:24:42.228383689 +0200
-@@ -132,7 +132,7 @@ static const struct generic_val_print_de
+--- gdb-7.10.50.20151027.orig/gdb/c-valprint.c 2015-11-02 21:23:11.191351515 +0100
++++ gdb-7.10.50.20151027/gdb/c-valprint.c 2015-11-02 21:23:13.207364780 +0100
+@@ -242,7 +242,7 @@ c_val_print_array (struct type *type, co
+ if (TYPE_LENGTH (type) > 0 && TYPE_LENGTH (unresolved_elttype) > 0)
+ {
+ LONGEST low_bound, high_bound;
+- int eltlen, len;
++ LONGEST eltlen, len;
+ struct gdbarch *gdbarch = get_type_arch (type);
+ enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
+ unsigned int i = 0; /* Number of characters printed. */
+@@ -316,8 +316,8 @@ c_val_print_array (struct type *type, co
+ if (cp_is_vtbl_ptr_type (elttype))
+ {
+ i = 1;
+- fprintf_filtered (stream, _("%d vtable entries"),
+- len - 1);
++ fprintf_filtered (stream, _("%s vtable entries"),
++ plongest (len - 1));
+ }
+ else
+ {
+@@ -394,7 +394,7 @@ c_val_print_struct (struct type *type, c
+ -fvtable_thunks. (Otherwise, look under
+ TYPE_CODE_PTR.) */
+ struct gdbarch *gdbarch = get_type_arch (type);
+- int offset = (embedded_offset
++ LONGEST offset = (embedded_offset
+ + TYPE_FIELD_BITPOS (type,
+ VTBL_FNADDR_OFFSET) / 8);
+ struct type *field_type = TYPE_FIELD_TYPE (type, VTBL_FNADDR_OFFSET);
+@@ -493,7 +493,7 @@ c_val_print_memberptr (struct type *type
void
c_val_print (struct type *type, const gdb_byte *valaddr,
@@ -1394,29 +1409,7 @@ Index: gdb-7.9.90.20150709/gdb/c-valprint.c
struct ui_file *stream, int recurse,
const struct value *original_value,
const struct value_print_options *options)
-@@ -143,7 +143,7 @@ c_val_print (struct type *type, const gd
- unsigned len;
- struct type *elttype, *unresolved_elttype;
- struct type *unresolved_type = type;
-- unsigned eltlen;
-+ ULONGEST eltlen;
- CORE_ADDR addr;
-
- CHECK_TYPEDEF (type);
-@@ -379,9 +379,9 @@ c_val_print (struct type *type, const gd
- /* Print vtable entry - we only get here if NOT using
- -fvtable_thunks. (Otherwise, look under
- TYPE_CODE_PTR.) */
-- int offset = (embedded_offset
-- + TYPE_FIELD_BITPOS (type,
-- VTBL_FNADDR_OFFSET) / 8);
-+ LONGEST offset = (embedded_offset
-+ + TYPE_FIELD_BITPOS (type,
-+ VTBL_FNADDR_OFFSET) / 8);
- struct type *field_type = TYPE_FIELD_TYPE (type,
- VTBL_FNADDR_OFFSET);
- CORE_ADDR addr
-@@ -460,7 +460,8 @@ c_value_print (struct value *val, struct
+@@ -565,7 +565,8 @@ c_value_print (struct value *val, struct
const struct value_print_options *options)
{
struct type *type, *real_type, *val_type;
@@ -1426,10 +1419,10 @@ Index: gdb-7.9.90.20150709/gdb/c-valprint.c
struct value_print_options opts = *options;
opts.deref_ref = 1;
-Index: gdb-7.9.90.20150709/gdb/cp-abi.c
+Index: gdb-7.10.50.20151027/gdb/cp-abi.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/cp-abi.c 2015-07-09 18:24:38.980355983 +0200
-+++ gdb-7.9.90.20150709/gdb/cp-abi.c 2015-07-09 18:24:42.228383689 +0200
+--- gdb-7.10.50.20151027.orig/gdb/cp-abi.c 2015-11-02 21:23:11.192351522 +0100
++++ gdb-7.10.50.20151027/gdb/cp-abi.c 2015-11-02 21:23:13.207364780 +0100
@@ -64,12 +64,12 @@ is_operator_name (const char *name)
return (*current_cp_abi.is_operator_name) (name);
}
@@ -1464,10 +1457,10 @@ Index: gdb-7.9.90.20150709/gdb/cp-abi.c
{
struct type *ret = NULL;
-Index: gdb-7.9.90.20150709/gdb/cp-abi.h
+Index: gdb-7.10.50.20151027/gdb/cp-abi.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/cp-abi.h 2015-07-09 18:24:38.980355983 +0200
-+++ gdb-7.9.90.20150709/gdb/cp-abi.h 2015-07-09 18:24:42.229383698 +0200
+--- gdb-7.10.50.20151027.orig/gdb/cp-abi.h 2015-11-02 21:23:11.192351522 +0100
++++ gdb-7.10.50.20151027/gdb/cp-abi.h 2015-11-02 21:23:13.207364780 +0100
@@ -108,7 +108,7 @@ extern struct value *value_virtual_fn_fi
struct fn_field *f,
int j,
@@ -1522,10 +1515,10 @@ Index: gdb-7.9.90.20150709/gdb/cp-abi.h
void (*print_method_ptr) (const gdb_byte *contents,
struct type *type,
struct ui_file *stream);
-Index: gdb-7.9.90.20150709/gdb/cp-valprint.c
+Index: gdb-7.10.50.20151027/gdb/cp-valprint.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/cp-valprint.c 2015-07-09 18:24:38.980355983 +0200
-+++ gdb-7.9.90.20150709/gdb/cp-valprint.c 2015-07-09 18:24:42.229383698 +0200
+--- gdb-7.10.50.20151027.orig/gdb/cp-valprint.c 2015-11-02 21:23:11.193351529 +0100
++++ gdb-7.10.50.20151027/gdb/cp-valprint.c 2015-11-02 21:23:13.208364787 +0100
@@ -80,7 +80,7 @@ static void cp_print_static_field (struc
const struct value_print_options *);
@@ -1599,11 +1592,11 @@ Index: gdb-7.9.90.20150709/gdb/cp-valprint.c
int skip = 0;
struct type *baseclass = check_typedef (TYPE_BASECLASS (type, i));
const char *basename = TYPE_NAME (baseclass);
-Index: gdb-7.9.90.20150709/gdb/d-lang.h
+Index: gdb-7.10.50.20151027/gdb/d-lang.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/d-lang.h 2015-07-09 18:24:38.981355992 +0200
-+++ gdb-7.9.90.20150709/gdb/d-lang.h 2015-07-09 18:24:42.229383698 +0200
-@@ -71,7 +71,7 @@ extern const struct builtin_d_type *buil
+--- gdb-7.10.50.20151027.orig/gdb/d-lang.h 2015-11-02 21:23:11.193351529 +0100
++++ gdb-7.10.50.20151027/gdb/d-lang.h 2015-11-02 21:23:13.208364787 +0100
+@@ -81,7 +81,7 @@ extern struct block_symbol d_lookup_nest
/* Defined in d-valprint.c */
extern void d_val_print (struct type *type, const gdb_byte *valaddr,
@@ -1612,10 +1605,10 @@ Index: gdb-7.9.90.20150709/gdb/d-lang.h
struct ui_file *stream, int recurse,
const struct value *val,
const struct value_print_options *options);
-Index: gdb-7.9.90.20150709/gdb/d-valprint.c
+Index: gdb-7.10.50.20151027/gdb/d-valprint.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/d-valprint.c 2015-07-09 18:24:38.981355992 +0200
-+++ gdb-7.9.90.20150709/gdb/d-valprint.c 2015-07-09 18:24:42.229383698 +0200
+--- gdb-7.10.50.20151027.orig/gdb/d-valprint.c 2015-11-02 21:23:11.193351529 +0100
++++ gdb-7.10.50.20151027/gdb/d-valprint.c 2015-11-02 21:23:13.208364787 +0100
@@ -29,7 +29,7 @@
static int
@@ -1638,10 +1631,10 @@ Index: gdb-7.9.90.20150709/gdb/d-valprint.c
const struct value_print_options *options)
{
int ret;
-Index: gdb-7.9.90.20150709/gdb/doublest.c
+Index: gdb-7.10.50.20151027/gdb/doublest.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/doublest.c 2015-07-09 18:24:38.981355992 +0200
-+++ gdb-7.9.90.20150709/gdb/doublest.c 2015-07-09 18:24:42.230383706 +0200
+--- gdb-7.10.50.20151027.orig/gdb/doublest.c 2015-11-02 21:23:11.194351535 +0100
++++ gdb-7.10.50.20151027/gdb/doublest.c 2015-11-02 21:23:13.208364787 +0100
@@ -765,7 +765,7 @@ floatformat_from_doublest (const struct
but not passed on by GDB. This should be fixed. */
@@ -1662,11 +1655,11 @@ Index: gdb-7.9.90.20150709/gdb/doublest.c
return format;
}
-Index: gdb-7.9.90.20150709/gdb/dwarf2loc.c
+Index: gdb-7.10.50.20151027/gdb/dwarf2loc.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/dwarf2loc.c 2015-07-09 18:24:38.983356009 +0200
-+++ gdb-7.9.90.20150709/gdb/dwarf2loc.c 2015-07-09 18:24:42.231383715 +0200
-@@ -1557,19 +1557,19 @@ insert_bits (unsigned int datum,
+--- gdb-7.10.50.20151027.orig/gdb/dwarf2loc.c 2015-11-02 21:23:11.197351555 +0100
++++ gdb-7.10.50.20151027/gdb/dwarf2loc.c 2015-11-02 21:23:13.209364793 +0100
+@@ -1632,19 +1632,19 @@ insert_bits (unsigned int datum,
BITS_BIG_ENDIAN is taken directly from gdbarch. */
static void
@@ -1692,7 +1685,7 @@ Index: gdb-7.9.90.20150709/gdb/dwarf2loc.c
dest_avail = 8 - dest_offset_bits % 8;
-@@ -1607,13 +1607,13 @@ static void
+@@ -1682,13 +1682,13 @@ static void
read_pieced_value (struct value *v)
{
int i;
@@ -1708,7 +1701,7 @@ Index: gdb-7.9.90.20150709/gdb/dwarf2loc.c
size_t buffer_size = 0;
gdb_byte *buffer = NULL;
struct cleanup *cleanup;
-@@ -1640,8 +1640,8 @@ read_pieced_value (struct value *v)
+@@ -1715,8 +1715,8 @@ read_pieced_value (struct value *v)
for (i = 0; i < c->n_pieces && offset < type_len; i++)
{
struct dwarf_expr_piece *p = &c->pieces[i];
@@ -1719,7 +1712,7 @@ Index: gdb-7.9.90.20150709/gdb/dwarf2loc.c
const gdb_byte *intermediate_buffer;
/* Compute size, source, and destination offsets for copying, in
-@@ -1790,13 +1790,13 @@ static void
+@@ -1856,13 +1856,13 @@ static void
write_pieced_value (struct value *to, struct value *from)
{
int i;
@@ -1735,7 +1728,7 @@ Index: gdb-7.9.90.20150709/gdb/dwarf2loc.c
size_t buffer_size = 0;
gdb_byte *buffer = NULL;
struct cleanup *cleanup;
-@@ -1824,8 +1824,8 @@ write_pieced_value (struct value *to, st
+@@ -1890,8 +1890,8 @@ write_pieced_value (struct value *to, st
for (i = 0; i < c->n_pieces && offset < type_len; i++)
{
struct dwarf_expr_piece *p = &c->pieces[i];
@@ -1746,7 +1739,7 @@ Index: gdb-7.9.90.20150709/gdb/dwarf2loc.c
int need_bitwise;
const gdb_byte *source_buffer;
-@@ -1953,8 +1953,8 @@ write_pieced_value (struct value *to, st
+@@ -2010,8 +2010,8 @@ write_pieced_value (struct value *to, st
a synthetic pointer. */
static int
@@ -1757,7 +1750,7 @@ Index: gdb-7.9.90.20150709/gdb/dwarf2loc.c
{
struct piece_closure *c
= (struct piece_closure *) value_computed_closure (value);
-@@ -1967,7 +1967,7 @@ check_pieced_synthetic_pointer (const st
+@@ -2024,7 +2024,7 @@ check_pieced_synthetic_pointer (const st
for (i = 0; i < c->n_pieces && bit_length > 0; i++)
{
struct dwarf_expr_piece *p = &c->pieces[i];
@@ -1766,7 +1759,7 @@ Index: gdb-7.9.90.20150709/gdb/dwarf2loc.c
if (bit_offset > 0)
{
-@@ -2009,9 +2009,10 @@ indirect_pieced_value (struct value *val
+@@ -2066,9 +2066,10 @@ indirect_pieced_value (struct value *val
struct type *type;
struct frame_info *frame;
struct dwarf2_locexpr_baton baton;
@@ -1779,7 +1772,7 @@ Index: gdb-7.9.90.20150709/gdb/dwarf2loc.c
enum bfd_endian byte_order;
type = check_typedef (value_type (value));
-@@ -2026,7 +2027,7 @@ indirect_pieced_value (struct value *val
+@@ -2083,7 +2084,7 @@ indirect_pieced_value (struct value *val
for (i = 0; i < c->n_pieces && bit_length > 0; i++)
{
struct dwarf_expr_piece *p = &c->pieces[i];
@@ -1788,7 +1781,7 @@ Index: gdb-7.9.90.20150709/gdb/dwarf2loc.c
if (bit_offset > 0)
{
-@@ -2309,7 +2310,7 @@ dwarf2_evaluate_loc_desc_full (struct ty
+@@ -2363,7 +2364,7 @@ dwarf2_evaluate_loc_desc_full (struct ty
struct value *value = dwarf_expr_fetch (ctx, 0);
gdb_byte *contents;
const gdb_byte *val_bytes;
@@ -1797,11 +1790,11 @@ Index: gdb-7.9.90.20150709/gdb/dwarf2loc.c
if (byte_offset + TYPE_LENGTH (type) > n)
invalid_synthetic_pointer ();
-Index: gdb-7.9.90.20150709/gdb/dwarf2read.c
+Index: gdb-7.10.50.20151027/gdb/dwarf2read.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/dwarf2read.c 2015-07-09 18:24:38.989356060 +0200
-+++ gdb-7.9.90.20150709/gdb/dwarf2read.c 2015-07-09 18:24:42.236383757 +0200
-@@ -1910,12 +1910,12 @@ dwarf2_complex_location_expr_complaint (
+--- gdb-7.10.50.20151027.orig/gdb/dwarf2read.c 2015-11-02 21:23:11.204351601 +0100
++++ gdb-7.10.50.20151027/gdb/dwarf2read.c 2015-11-02 21:23:13.215364833 +0100
+@@ -1917,12 +1917,12 @@ dwarf2_complex_location_expr_complaint (
}
static void
@@ -1818,7 +1811,7 @@ Index: gdb-7.9.90.20150709/gdb/dwarf2read.c
}
static void
-@@ -12524,8 +12524,8 @@ dwarf2_add_field (struct field_info *fip
+@@ -12554,8 +12554,8 @@ dwarf2_add_field (struct field_info *fip
object, and then subtract off the number of bits of
the field itself. The result is the bit offset of
the LSB of the field. */
@@ -1829,10 +1822,10 @@ Index: gdb-7.9.90.20150709/gdb/dwarf2read.c
attr = dwarf2_attr (die, DW_AT_byte_size, cu);
if (attr)
-Index: gdb-7.9.90.20150709/gdb/eval.c
+Index: gdb-7.10.50.20151027/gdb/eval.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/eval.c 2015-07-09 18:24:38.990356068 +0200
-+++ gdb-7.9.90.20150709/gdb/eval.c 2015-07-09 18:24:42.237383766 +0200
+--- gdb-7.10.50.20151027.orig/gdb/eval.c 2015-11-02 21:23:11.206351614 +0100
++++ gdb-7.10.50.20151027/gdb/eval.c 2015-11-02 21:23:13.216364839 +0100
@@ -317,7 +317,8 @@ evaluate_struct_tuple (struct value *str
while (--nargs >= 0)
{
@@ -1852,7 +1845,7 @@ Index: gdb-7.9.90.20150709/gdb/eval.c
if (exp->elts[*pos].opcode == BINOP_COMMA)
{
-@@ -525,11 +526,11 @@ binop_promote (const struct language_def
+@@ -526,11 +527,11 @@ binop_promote (const struct language_def
/* FIXME: Also mixed integral/booleans, with result an integer. */
{
const struct builtin_type *builtin = builtin_type (gdbarch);
@@ -1867,7 +1860,7 @@ Index: gdb-7.9.90.20150709/gdb/eval.c
int unsigned_operation;
/* Determine type length and signedness after promotion for
-@@ -711,7 +712,7 @@ evaluate_subexp_standard (struct type *e
+@@ -712,7 +713,7 @@ evaluate_subexp_standard (struct type *e
struct value **argvec;
int code;
int ix;
@@ -1876,7 +1869,7 @@ Index: gdb-7.9.90.20150709/gdb/eval.c
struct type **arg_types;
int save_pos1;
struct symbol *function = NULL;
-@@ -890,7 +891,7 @@ evaluate_subexp_standard (struct type *e
+@@ -891,7 +892,7 @@ evaluate_subexp_standard (struct type *e
struct type *range_type = TYPE_INDEX_TYPE (type);
struct type *element_type = TYPE_TARGET_TYPE (type);
struct value *array = allocate_value (expect_type);
@@ -1895,10 +1888,10 @@ Index: gdb-7.9.90.20150709/gdb/eval.c
struct value_print_options opts;
get_user_print_options (&opts);
-Index: gdb-7.9.90.20150709/gdb/f-lang.c
+Index: gdb-7.10.50.20151027/gdb/f-lang.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/f-lang.c 2015-07-09 18:24:38.991356077 +0200
-+++ gdb-7.9.90.20150709/gdb/f-lang.c 2015-07-09 18:24:42.237383766 +0200
+--- gdb-7.10.50.20151027.orig/gdb/f-lang.c 2015-11-02 21:23:11.206351614 +0100
++++ gdb-7.10.50.20151027/gdb/f-lang.c 2015-11-02 21:23:13.216364839 +0100
@@ -103,7 +103,7 @@ f_printchar (int c, struct type *type, s
static void
@@ -1908,10 +1901,10 @@ Index: gdb-7.9.90.20150709/gdb/f-lang.c
const struct value_print_options *options)
{
const char *type_encoding = f_get_encoding (type);
-Index: gdb-7.9.90.20150709/gdb/f-lang.h
+Index: gdb-7.10.50.20151027/gdb/f-lang.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/f-lang.h 2015-07-09 18:24:38.991356077 +0200
-+++ gdb-7.9.90.20150709/gdb/f-lang.h 2015-07-09 18:24:42.238383774 +0200
+--- gdb-7.10.50.20151027.orig/gdb/f-lang.h 2015-11-02 21:23:11.207351620 +0100
++++ gdb-7.10.50.20151027/gdb/f-lang.h 2015-11-02 21:23:13.216364839 +0100
@@ -30,7 +30,7 @@ extern void f_error (char *); /* Defined
extern void f_print_type (struct type *, const char *, struct ui_file *, int,
int, const struct type_print_options *);
@@ -1921,10 +1914,10 @@ Index: gdb-7.9.90.20150709/gdb/f-lang.h
struct ui_file *, int,
const struct value *,
const struct value_print_options *);
-Index: gdb-7.9.90.20150709/gdb/f-valprint.c
+Index: gdb-7.10.50.20151027/gdb/f-valprint.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/f-valprint.c 2015-07-09 18:24:38.991356077 +0200
-+++ gdb-7.9.90.20150709/gdb/f-valprint.c 2015-07-09 18:24:42.238383774 +0200
+--- gdb-7.10.50.20151027.orig/gdb/f-valprint.c 2015-11-02 21:23:11.207351620 +0100
++++ gdb-7.10.50.20151027/gdb/f-valprint.c 2015-11-02 21:24:34.108897090 +0100
@@ -38,7 +38,7 @@ extern void _initialize_f_valprint (void
static void info_common_command (char *, int);
static void f77_get_dynamic_length_of_aggregate (struct type *);
@@ -1984,11 +1977,11 @@ Index: gdb-7.9.90.20150709/gdb/f-valprint.c
const struct value *original_value,
const struct value_print_options *options)
{
-Index: gdb-7.9.90.20150709/gdb/findvar.c
+Index: gdb-7.10.50.20151027/gdb/findvar.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/findvar.c 2015-07-09 18:24:38.991356077 +0200
-+++ gdb-7.9.90.20150709/gdb/findvar.c 2015-07-09 18:24:42.238383774 +0200
-@@ -626,7 +626,7 @@ struct value *
+--- gdb-7.10.50.20151027.orig/gdb/findvar.c 2015-11-02 21:23:11.208351627 +0100
++++ gdb-7.10.50.20151027/gdb/findvar.c 2015-11-02 21:23:13.217364846 +0100
+@@ -801,7 +801,7 @@ struct value *
default_value_from_register (struct gdbarch *gdbarch, struct type *type,
int regnum, struct frame_id frame_id)
{
@@ -1997,7 +1990,7 @@ Index: gdb-7.9.90.20150709/gdb/findvar.c
struct value *value = allocate_value (type);
VALUE_LVAL (value) = lval_register;
-@@ -659,10 +659,10 @@ void
+@@ -834,10 +834,10 @@ void
read_frame_register_value (struct value *value, struct frame_info *frame)
{
struct gdbarch *gdbarch = get_frame_arch (frame);
@@ -2006,24 +1999,24 @@ Index: gdb-7.9.90.20150709/gdb/findvar.c
+ LONGEST offset = 0;
+ LONGEST reg_offset = value_offset (value);
int regnum = VALUE_REGNUM (value);
-- int len = TYPE_LENGTH (check_typedef (value_type (value)));
-+ LONGEST len = TYPE_LENGTH (check_typedef (value_type (value)));
+- int len = type_length_units (check_typedef (value_type (value)));
++ LONGEST len = type_length_units (check_typedef (value_type (value)));
gdb_assert (VALUE_LVAL (value) == lval_register);
-@@ -677,7 +677,7 @@ read_frame_register_value (struct value
+@@ -852,7 +852,7 @@ read_frame_register_value (struct value
while (len > 0)
{
struct value *regval = get_frame_register_value (frame, regnum);
-- int reg_len = TYPE_LENGTH (value_type (regval)) - reg_offset;
-+ LONGEST reg_len = TYPE_LENGTH (value_type (regval)) - reg_offset;
+- int reg_len = type_length_units (value_type (regval)) - reg_offset;
++ LONGEST reg_len = type_length_units (value_type (regval)) - reg_offset;
/* If the register length is larger than the number of bytes
remaining to copy, then only copy the appropriate bytes. */
-Index: gdb-7.9.90.20150709/gdb/frame.c
+Index: gdb-7.10.50.20151027/gdb/frame.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/frame.c 2015-07-09 18:24:38.992356085 +0200
-+++ gdb-7.9.90.20150709/gdb/frame.c 2015-07-09 18:24:42.239383783 +0200
+--- gdb-7.10.50.20151027.orig/gdb/frame.c 2015-11-02 21:23:11.208351627 +0100
++++ gdb-7.10.50.20151027/gdb/frame.c 2015-11-02 21:23:13.218364852 +0100
@@ -1272,7 +1272,7 @@ deprecated_frame_register_read (struct f
int
@@ -2042,11 +2035,11 @@ Index: gdb-7.9.90.20150709/gdb/frame.c
/* Copy the data. */
while (len > 0)
-Index: gdb-7.9.90.20150709/gdb/frame.h
+Index: gdb-7.10.50.20151027/gdb/frame.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/frame.h 2015-07-09 18:24:38.992356085 +0200
-+++ gdb-7.9.90.20150709/gdb/frame.h 2015-07-09 18:24:42.239383783 +0200
-@@ -583,7 +583,7 @@ extern void put_frame_register (struct f
+--- gdb-7.10.50.20151027.orig/gdb/frame.h 2015-11-02 21:23:11.209351634 +0100
++++ gdb-7.10.50.20151027/gdb/frame.h 2015-11-02 21:23:13.218364852 +0100
+@@ -585,7 +585,7 @@ extern void put_frame_register (struct f
contents are optimized out or unavailable, set *OPTIMIZEDP,
*UNAVAILABLEP accordingly. */
extern int get_frame_register_bytes (struct frame_info *frame, int regnum,
@@ -2055,11 +2048,11 @@ Index: gdb-7.9.90.20150709/gdb/frame.h
gdb_byte *myaddr,
int *optimizedp, int *unavailablep);
-Index: gdb-7.9.90.20150709/gdb/gdbtypes.c
+Index: gdb-7.10.50.20151027/gdb/gdbtypes.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/gdbtypes.c 2015-07-09 18:24:38.995356111 +0200
-+++ gdb-7.9.90.20150709/gdb/gdbtypes.c 2015-07-09 18:24:42.241383800 +0200
-@@ -2698,7 +2698,7 @@ allocate_gnat_aux_type (struct type *typ
+--- gdb-7.10.50.20151027.orig/gdb/gdbtypes.c 2015-11-02 21:23:11.212351653 +0100
++++ gdb-7.10.50.20151027/gdb/gdbtypes.c 2015-11-02 21:23:13.220364866 +0100
+@@ -2719,7 +2719,7 @@ allocate_gnat_aux_type (struct type *typ
least as long as OBJFILE. */
struct type *
@@ -2068,7 +2061,7 @@ Index: gdb-7.9.90.20150709/gdb/gdbtypes.c
const char *name, struct objfile *objfile)
{
struct type *type;
-@@ -2938,8 +2938,8 @@ is_public_ancestor (struct type *base, s
+@@ -2959,8 +2959,8 @@ is_public_ancestor (struct type *base, s
static int
is_unique_ancestor_worker (struct type *base, struct type *dclass,
@@ -2079,7 +2072,7 @@ Index: gdb-7.9.90.20150709/gdb/gdbtypes.c
CORE_ADDR address, struct value *val)
{
int i, count = 0;
-@@ -2950,7 +2950,7 @@ is_unique_ancestor_worker (struct type *
+@@ -2971,7 +2971,7 @@ is_unique_ancestor_worker (struct type *
for (i = 0; i < TYPE_N_BASECLASSES (dclass) && count < 2; ++i)
{
struct type *iter;
@@ -2088,7 +2081,7 @@ Index: gdb-7.9.90.20150709/gdb/gdbtypes.c
iter = check_typedef (TYPE_BASECLASS (dclass, i));
-@@ -2991,7 +2991,7 @@ is_unique_ancestor_worker (struct type *
+@@ -3012,7 +3012,7 @@ is_unique_ancestor_worker (struct type *
int
is_unique_ancestor (struct type *base, struct value *val)
{
@@ -2097,7 +2090,7 @@ Index: gdb-7.9.90.20150709/gdb/gdbtypes.c
return is_unique_ancestor_worker (base, value_type (val), &offset,
value_contents_for_printing (val),
-@@ -4156,7 +4156,7 @@ recursive_dump_type (struct type *type,
+@@ -4200,7 +4200,7 @@ recursive_dump_type (struct type *type,
break;
}
puts_filtered ("\n");
@@ -2106,7 +2099,7 @@ Index: gdb-7.9.90.20150709/gdb/gdbtypes.c
if (TYPE_OBJFILE_OWNED (type))
{
printfi_filtered (spaces, "objfile ");
-@@ -4284,8 +4284,8 @@ recursive_dump_type (struct type *type,
+@@ -4328,8 +4328,8 @@ recursive_dump_type (struct type *type,
idx, plongest (TYPE_FIELD_ENUMVAL (type, idx)));
else
printfi_filtered (spaces + 2,
@@ -2117,7 +2110,7 @@ Index: gdb-7.9.90.20150709/gdb/gdbtypes.c
TYPE_FIELD_BITSIZE (type, idx));
gdb_print_host_address (TYPE_FIELD_TYPE (type, idx), gdb_stdout);
printf_filtered (" name '%s' (",
-@@ -4666,7 +4666,7 @@ copy_type (const struct type *type)
+@@ -4671,7 +4671,7 @@ copy_type (const struct type *type)
struct type *
arch_type (struct gdbarch *gdbarch,
@@ -2126,11 +2119,11 @@ Index: gdb-7.9.90.20150709/gdb/gdbtypes.c
{
struct type *type;
-Index: gdb-7.9.90.20150709/gdb/gdbtypes.h
+Index: gdb-7.10.50.20151027/gdb/gdbtypes.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/gdbtypes.h 2015-07-09 18:24:38.995356111 +0200
-+++ gdb-7.9.90.20150709/gdb/gdbtypes.h 2015-07-09 18:24:42.241383800 +0200
-@@ -504,7 +504,7 @@ union field_location
+--- gdb-7.10.50.20151027.orig/gdb/gdbtypes.h 2015-11-02 21:23:11.213351660 +0100
++++ gdb-7.10.50.20151027/gdb/gdbtypes.h 2015-11-02 21:23:13.220364866 +0100
+@@ -512,7 +512,7 @@ union field_location
gdbarch_bits_big_endian=0 targets, it is the bit offset to
the LSB. */
@@ -2140,15 +2133,15 @@ Index: gdb-7.9.90.20150709/gdb/gdbtypes.h
/* * Enum value. */
LONGEST enumval;
@@ -822,7 +822,7 @@ struct type
- HOST_CHAR_BIT. However, this would still fail to address
- machines based on a ternary or decimal representation. */
-
-- unsigned length;
+ type_length_units function should be used in order to get the length
+ expressed in target addressable memory units. */
+
+- unsigned int length;
+ ULONGEST length;
/* * Core type, shared by a group of qualified types. */
-@@ -1708,11 +1708,12 @@ extern struct type *get_target_type (str
+@@ -1717,11 +1717,12 @@ extern unsigned int type_length_units (s
/* * Helper function to construct objfile-owned types. */
@@ -2163,10 +2156,10 @@ Index: gdb-7.9.90.20150709/gdb/gdbtypes.h
extern struct type *arch_integer_type (struct gdbarch *, int, int, char *);
extern struct type *arch_character_type (struct gdbarch *, int, int, char *);
extern struct type *arch_boolean_type (struct gdbarch *, int, int, char *);
-Index: gdb-7.9.90.20150709/gdb/gnu-v2-abi.c
+Index: gdb-7.10.50.20151027/gdb/gnu-v2-abi.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/gnu-v2-abi.c 2015-07-09 18:24:38.996356120 +0200
-+++ gdb-7.9.90.20150709/gdb/gnu-v2-abi.c 2015-07-09 18:24:42.241383800 +0200
+--- gdb-7.10.50.20151027.orig/gdb/gnu-v2-abi.c 2015-11-02 21:23:11.213351660 +0100
++++ gdb-7.10.50.20151027/gdb/gnu-v2-abi.c 2015-11-02 21:23:13.221364872 +0100
@@ -82,7 +82,7 @@ gnuv2_is_operator_name (const char *name
TYPE is the type in which F is located. */
static struct value *
@@ -2218,10 +2211,10 @@ Index: gdb-7.9.90.20150709/gdb/gnu-v2-abi.c
gnuv2_baseclass_offset (type, i, valaddr,
embedded_offset, address, val);
-Index: gdb-7.9.90.20150709/gdb/gnu-v3-abi.c
+Index: gdb-7.10.50.20151027/gdb/gnu-v3-abi.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/gnu-v3-abi.c 2015-07-09 18:24:38.996356120 +0200
-+++ gdb-7.9.90.20150709/gdb/gnu-v3-abi.c 2015-07-09 18:24:42.242383808 +0200
+--- gdb-7.10.50.20151027.orig/gdb/gnu-v3-abi.c 2015-11-02 21:23:11.214351667 +0100
++++ gdb-7.10.50.20151027/gdb/gnu-v3-abi.c 2015-11-02 21:23:13.221364872 +0100
@@ -108,7 +108,7 @@ build_gdb_vtable_type (struct gdbarch *a
{
struct type *t;
@@ -2239,8 +2232,8 @@ Index: gdb-7.9.90.20150709/gdb/gnu-v3-abi.c
+static LONGEST
vtable_address_point_offset (struct gdbarch *gdbarch)
{
- struct type *vtable_type = gdbarch_data (gdbarch, vtable_type_gdbarch_data);
-@@ -285,7 +285,7 @@ gnuv3_get_vtable (struct gdbarch *gdbarc
+ struct type *vtable_type
+@@ -286,7 +286,7 @@ gnuv3_get_vtable (struct gdbarch *gdbarc
static struct type *
gnuv3_rtti_type (struct value *value,
@@ -2249,7 +2242,7 @@ Index: gdb-7.9.90.20150709/gdb/gnu-v3-abi.c
{
struct gdbarch *gdbarch;
struct type *values_type = check_typedef (value_type (value));
-@@ -410,7 +410,7 @@ gnuv3_get_virtual_fn (struct gdbarch *gd
+@@ -411,7 +411,7 @@ gnuv3_get_virtual_fn (struct gdbarch *gd
static struct value *
gnuv3_virtual_fn_field (struct value **value_p,
struct fn_field *f, int j,
@@ -2258,7 +2251,7 @@ Index: gdb-7.9.90.20150709/gdb/gnu-v3-abi.c
{
struct type *values_type = check_typedef (value_type (*value_p));
struct gdbarch *gdbarch;
-@@ -440,16 +440,16 @@ gnuv3_virtual_fn_field (struct value **v
+@@ -441,16 +441,16 @@ gnuv3_virtual_fn_field (struct value **v
-1 is returned on error. */
@@ -2278,7 +2271,7 @@ Index: gdb-7.9.90.20150709/gdb/gnu-v3-abi.c
/* Determine architecture. */
gdbarch = get_type_arch (type);
-@@ -473,7 +473,7 @@ gnuv3_baseclass_offset (struct type *typ
+@@ -474,7 +474,7 @@ gnuv3_baseclass_offset (struct type *typ
cur_base_offset = cur_base_offset + vtable_address_point_offset (gdbarch);
if ((- cur_base_offset) % TYPE_LENGTH (ptr_type) != 0)
error (_("Misaligned vbase offset."));
@@ -2287,7 +2280,7 @@ Index: gdb-7.9.90.20150709/gdb/gnu-v3-abi.c
vtable = gnuv3_get_vtable (gdbarch, type, address + embedded_offset);
gdb_assert (vtable != NULL);
-@@ -517,7 +517,7 @@ gnuv3_find_method_in (struct type *domai
+@@ -518,7 +518,7 @@ gnuv3_find_method_in (struct type *domai
we're out of luck. */
for (i = 0; i < TYPE_N_BASECLASSES (domain); i++)
{
@@ -2296,10 +2289,10 @@ Index: gdb-7.9.90.20150709/gdb/gnu-v3-abi.c
struct type *basetype;
if (BASETYPE_VIA_VIRTUAL (domain, i))
-Index: gdb-7.9.90.20150709/gdb/go-lang.h
+Index: gdb-7.10.50.20151027/gdb/go-lang.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/go-lang.h 2015-07-09 18:24:38.997356128 +0200
-+++ gdb-7.9.90.20150709/gdb/go-lang.h 2015-07-09 18:24:42.242383808 +0200
+--- gdb-7.10.50.20151027.orig/gdb/go-lang.h 2015-11-02 21:23:11.214351667 +0100
++++ gdb-7.10.50.20151027/gdb/go-lang.h 2015-11-02 21:23:13.221364872 +0100
@@ -85,7 +85,7 @@ extern void go_print_type (struct type *
/* Defined in go-valprint.c. */
@@ -2309,10 +2302,10 @@ Index: gdb-7.9.90.20150709/gdb/go-lang.h
struct ui_file *stream, int recurse,
const struct value *val,
const struct value_print_options *options);
-Index: gdb-7.9.90.20150709/gdb/go-valprint.c
+Index: gdb-7.10.50.20151027/gdb/go-valprint.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/go-valprint.c 2015-07-09 18:24:38.997356128 +0200
-+++ gdb-7.9.90.20150709/gdb/go-valprint.c 2015-07-09 18:24:42.242383808 +0200
+--- gdb-7.10.50.20151027.orig/gdb/go-valprint.c 2015-11-02 21:23:11.214351667 +0100
++++ gdb-7.10.50.20151027/gdb/go-valprint.c 2015-11-02 21:23:13.222364879 +0100
@@ -37,7 +37,7 @@
static void
@@ -2334,12 +2327,12 @@ Index: gdb-7.9.90.20150709/gdb/go-valprint.c
+ struct ui_file *stream, int recurse, const struct value *val,
const struct value_print_options *options)
{
- CHECK_TYPEDEF (type);
-Index: gdb-7.9.90.20150709/gdb/jv-lang.c
+ type = check_typedef (type);
+Index: gdb-7.10.50.20151027/gdb/jv-lang.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/jv-lang.c 2015-07-09 18:24:38.997356128 +0200
-+++ gdb-7.9.90.20150709/gdb/jv-lang.c 2015-07-09 18:24:42.243383817 +0200
-@@ -436,7 +436,7 @@ java_link_class_type (struct gdbarch *gd
+--- gdb-7.10.50.20151027.orig/gdb/jv-lang.c 2015-11-02 21:23:11.215351673 +0100
++++ gdb-7.10.50.20151027/gdb/jv-lang.c 2015-11-02 21:23:13.222364879 +0100
+@@ -440,7 +440,7 @@ java_link_class_type (struct gdbarch *gd
for (i = TYPE_N_BASECLASSES (type); i < nfields; i++)
{
int accflags;
@@ -2348,7 +2341,7 @@ Index: gdb-7.9.90.20150709/gdb/jv-lang.c
if (fields == NULL)
{
-@@ -886,7 +886,7 @@ java_printchar (int c, struct type *type
+@@ -890,7 +890,7 @@ java_printchar (int c, struct type *type
static void
java_printstr (struct ui_file *stream, struct type *type,
const gdb_byte *string,
@@ -2357,10 +2350,10 @@ Index: gdb-7.9.90.20150709/gdb/jv-lang.c
const struct value_print_options *options)
{
const char *type_encoding = java_get_encoding (type);
-Index: gdb-7.9.90.20150709/gdb/jv-lang.h
+Index: gdb-7.10.50.20151027/gdb/jv-lang.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/jv-lang.h 2015-07-09 18:24:38.997356128 +0200
-+++ gdb-7.9.90.20150709/gdb/jv-lang.h 2015-07-09 18:24:42.243383817 +0200
+--- gdb-7.10.50.20151027.orig/gdb/jv-lang.h 2015-11-02 21:23:11.215351673 +0100
++++ gdb-7.10.50.20151027/gdb/jv-lang.h 2015-11-02 21:23:13.222364879 +0100
@@ -43,8 +43,8 @@ struct builtin_java_type
extern const struct builtin_java_type *builtin_java_type (struct gdbarch *);
@@ -2372,11 +2365,11 @@ Index: gdb-7.9.90.20150709/gdb/jv-lang.h
const struct value *,
const struct value_print_options *);
-Index: gdb-7.9.90.20150709/gdb/jv-valprint.c
+Index: gdb-7.10.50.20151027/gdb/jv-valprint.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/jv-valprint.c 2015-07-09 18:24:38.998356137 +0200
-+++ gdb-7.9.90.20150709/gdb/jv-valprint.c 2015-07-09 18:24:42.243383817 +0200
-@@ -265,7 +265,7 @@ java_value_print (struct value *val, str
+--- gdb-7.10.50.20151027.orig/gdb/jv-valprint.c 2015-11-02 21:23:11.215351673 +0100
++++ gdb-7.10.50.20151027/gdb/jv-valprint.c 2015-11-02 21:23:13.222364879 +0100
+@@ -266,7 +266,7 @@ java_value_print (struct value *val, str
static void
java_print_value_fields (struct type *type, const gdb_byte *valaddr,
@@ -2385,7 +2378,7 @@ Index: gdb-7.9.90.20150709/gdb/jv-valprint.c
CORE_ADDR address, struct ui_file *stream,
int recurse,
const struct value *val,
-@@ -453,7 +453,7 @@ java_print_value_fields (struct type *ty
+@@ -454,7 +454,7 @@ java_print_value_fields (struct type *ty
void
java_val_print (struct type *type, const gdb_byte *valaddr,
@@ -2394,11 +2387,11 @@ Index: gdb-7.9.90.20150709/gdb/jv-valprint.c
struct ui_file *stream, int recurse,
const struct value *val,
const struct value_print_options *options)
-Index: gdb-7.9.90.20150709/gdb/language.c
+Index: gdb-7.10.50.20151027/gdb/language.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/language.c 2015-07-09 18:24:38.998356137 +0200
-+++ gdb-7.9.90.20150709/gdb/language.c 2015-07-09 18:24:42.244383825 +0200
-@@ -720,7 +720,7 @@ unk_lang_printchar (int c, struct type *
+--- gdb-7.10.50.20151027.orig/gdb/language.c 2015-11-02 21:23:11.216351680 +0100
++++ gdb-7.10.50.20151027/gdb/language.c 2015-11-02 21:23:13.223364885 +0100
+@@ -739,7 +739,7 @@ unk_lang_printchar (int c, struct type *
static void
unk_lang_printstr (struct ui_file *stream, struct type *type,
@@ -2407,7 +2400,7 @@ Index: gdb-7.9.90.20150709/gdb/language.c
const char *encoding, int force_ellipses,
const struct value_print_options *options)
{
-@@ -739,7 +739,7 @@ unk_lang_print_type (struct type *type,
+@@ -758,7 +758,7 @@ unk_lang_print_type (struct type *type,
static void
unk_lang_val_print (struct type *type, const gdb_byte *valaddr,
@@ -2416,10 +2409,10 @@ Index: gdb-7.9.90.20150709/gdb/language.c
struct ui_file *stream, int recurse,
const struct value *val,
const struct value_print_options *options)
-Index: gdb-7.9.90.20150709/gdb/language.h
+Index: gdb-7.10.50.20151027/gdb/language.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/language.h 2015-07-09 18:24:38.998356137 +0200
-+++ gdb-7.9.90.20150709/gdb/language.h 2015-07-09 18:24:42.244383825 +0200
+--- gdb-7.10.50.20151027.orig/gdb/language.h 2015-11-02 21:23:11.216351680 +0100
++++ gdb-7.10.50.20151027/gdb/language.h 2015-11-02 21:23:13.223364885 +0100
@@ -189,7 +189,7 @@ struct language_defn
struct ui_file * stream);
@@ -2438,10 +2431,10 @@ Index: gdb-7.9.90.20150709/gdb/language.h
struct ui_file *stream, int recurse,
const struct value *val,
const struct value_print_options *options);
-Index: gdb-7.9.90.20150709/gdb/m2-lang.c
+Index: gdb-7.10.50.20151027/gdb/m2-lang.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/m2-lang.c 2015-07-09 18:24:38.999356145 +0200
-+++ gdb-7.9.90.20150709/gdb/m2-lang.c 2015-07-09 18:24:42.244383825 +0200
+--- gdb-7.10.50.20151027.orig/gdb/m2-lang.c 2015-11-02 21:23:11.217351686 +0100
++++ gdb-7.10.50.20151027/gdb/m2-lang.c 2015-11-02 21:23:13.223364885 +0100
@@ -104,10 +104,10 @@ m2_printchar (int c, struct type *type,
static void
@@ -2476,10 +2469,10 @@ Index: gdb-7.9.90.20150709/gdb/m2-lang.c
i = rep1 - 1;
things_printed += options->repeat_count_threshold;
need_comma = 1;
-Index: gdb-7.9.90.20150709/gdb/m2-lang.h
+Index: gdb-7.10.50.20151027/gdb/m2-lang.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/m2-lang.h 2015-07-09 18:24:38.999356145 +0200
-+++ gdb-7.9.90.20150709/gdb/m2-lang.h 2015-07-09 18:24:42.244383825 +0200
+--- gdb-7.10.50.20151027.orig/gdb/m2-lang.h 2015-11-02 21:23:11.217351686 +0100
++++ gdb-7.10.50.20151027/gdb/m2-lang.h 2015-11-02 21:23:13.223364885 +0100
@@ -34,7 +34,7 @@ extern void m2_print_typedef (struct typ
extern int m2_is_long_set (struct type *type);
extern int m2_is_unbounded_array (struct type *type);
@@ -2489,10 +2482,10 @@ Index: gdb-7.9.90.20150709/gdb/m2-lang.h
struct ui_file *, int,
const struct value *,
const struct value_print_options *);
-Index: gdb-7.9.90.20150709/gdb/m2-typeprint.c
+Index: gdb-7.10.50.20151027/gdb/m2-typeprint.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/m2-typeprint.c 2015-07-09 18:24:38.999356145 +0200
-+++ gdb-7.9.90.20150709/gdb/m2-typeprint.c 2015-07-09 18:24:42.245383834 +0200
+--- gdb-7.10.50.20151027.orig/gdb/m2-typeprint.c 2015-11-02 21:23:11.217351686 +0100
++++ gdb-7.10.50.20151027/gdb/m2-typeprint.c 2015-11-02 21:23:13.224364892 +0100
@@ -234,9 +234,12 @@ static void m2_array (struct type *type,
m2_print_bounds (TYPE_INDEX_TYPE (type), stream, show, -1, 1);
}
@@ -2509,10 +2502,10 @@ Index: gdb-7.9.90.20150709/gdb/m2-typeprint.c
}
fprintf_filtered (stream, "] OF ");
m2_print_type (TYPE_TARGET_TYPE (type), "", stream, show, level, flags);
-Index: gdb-7.9.90.20150709/gdb/m2-valprint.c
+Index: gdb-7.10.50.20151027/gdb/m2-valprint.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/m2-valprint.c 2015-07-09 18:24:38.999356145 +0200
-+++ gdb-7.9.90.20150709/gdb/m2-valprint.c 2015-07-09 18:24:42.245383834 +0200
+--- gdb-7.10.50.20151027.orig/gdb/m2-valprint.c 2015-11-02 21:23:11.217351686 +0100
++++ gdb-7.10.50.20151027/gdb/m2-valprint.c 2015-11-02 21:23:13.224364892 +0100
@@ -35,7 +35,7 @@ static int print_unpacked_pointer (struc
struct ui_file *stream);
static void
@@ -2578,10 +2571,10 @@ Index: gdb-7.9.90.20150709/gdb/m2-valprint.c
/* Look for a NULL char. */
for (temp_len = 0;
-Index: gdb-7.9.90.20150709/gdb/memrange.c
+Index: gdb-7.10.50.20151027/gdb/memrange.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/memrange.c 2015-07-09 18:24:38.999356145 +0200
-+++ gdb-7.9.90.20150709/gdb/memrange.c 2015-07-09 18:24:42.245383834 +0200
+--- gdb-7.10.50.20151027.orig/gdb/memrange.c 2015-11-02 21:23:11.218351693 +0100
++++ gdb-7.10.50.20151027/gdb/memrange.c 2015-11-02 21:23:13.224364892 +0100
@@ -21,8 +21,8 @@
#include "memrange.h"
@@ -2593,10 +2586,10 @@ Index: gdb-7.9.90.20150709/gdb/memrange.c
{
ULONGEST h, l;
-Index: gdb-7.9.90.20150709/gdb/memrange.h
+Index: gdb-7.10.50.20151027/gdb/memrange.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/memrange.h 2015-07-09 18:24:39.000356154 +0200
-+++ gdb-7.9.90.20150709/gdb/memrange.h 2015-07-09 18:24:42.245383834 +0200
+--- gdb-7.10.50.20151027.orig/gdb/memrange.h 2015-11-02 21:23:11.218351693 +0100
++++ gdb-7.10.50.20151027/gdb/memrange.h 2015-11-02 21:23:13.224364892 +0100
@@ -30,7 +30,7 @@ struct mem_range
CORE_ADDR start;
@@ -2617,11 +2610,11 @@ Index: gdb-7.9.90.20150709/gdb/memrange.h
/* Returns true if ADDR is in RANGE. */
-Index: gdb-7.9.90.20150709/gdb/mips-linux-nat.c
+Index: gdb-7.10.50.20151027/gdb/mips-linux-nat.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/mips-linux-nat.c 2015-07-09 18:24:39.000356154 +0200
-+++ gdb-7.9.90.20150709/gdb/mips-linux-nat.c 2015-07-09 18:24:42.245383834 +0200
-@@ -586,7 +586,7 @@ mips_linux_stopped_data_address (struct
+--- gdb-7.10.50.20151027.orig/gdb/mips-linux-nat.c 2015-11-02 21:23:11.218351693 +0100
++++ gdb-7.10.50.20151027/gdb/mips-linux-nat.c 2015-11-02 21:23:13.225364899 +0100
+@@ -587,7 +587,7 @@ mips_linux_stopped_data_address (struct
static int
mips_linux_region_ok_for_hw_watchpoint (struct target_ops *self,
@@ -2630,10 +2623,10 @@ Index: gdb-7.9.90.20150709/gdb/mips-linux-nat.c
{
struct pt_watch_regs dummy_regs;
int i;
-Index: gdb-7.9.90.20150709/gdb/opencl-lang.c
+Index: gdb-7.10.50.20151027/gdb/opencl-lang.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/opencl-lang.c 2015-07-09 18:24:39.000356154 +0200
-+++ gdb-7.9.90.20150709/gdb/opencl-lang.c 2015-07-09 18:24:42.246383843 +0200
+--- gdb-7.10.50.20151027.orig/gdb/opencl-lang.c 2015-11-02 21:23:11.219351699 +0100
++++ gdb-7.10.50.20151027/gdb/opencl-lang.c 2015-11-02 21:23:13.225364899 +0100
@@ -78,11 +78,11 @@ builtin_opencl_type (struct gdbarch *gdb
static struct type *
@@ -2710,10 +2703,10 @@ Index: gdb-7.9.90.20150709/gdb/opencl-lang.c
if (!value_bits_synthetic_pointer (c->val,
c->indices[i] * elsize + comp_offset,
-Index: gdb-7.9.90.20150709/gdb/p-lang.c
+Index: gdb-7.10.50.20151027/gdb/p-lang.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/p-lang.c 2015-07-09 18:24:39.001356162 +0200
-+++ gdb-7.9.90.20150709/gdb/p-lang.c 2015-07-09 18:24:42.246383843 +0200
+--- gdb-7.10.50.20151027.orig/gdb/p-lang.c 2015-11-02 21:23:11.219351699 +0100
++++ gdb-7.10.50.20151027/gdb/p-lang.c 2015-11-02 21:23:13.225364899 +0100
@@ -95,8 +95,8 @@ pascal_main_name (void)
are not multiple of TARGET_CHAR_BIT then the results are wrong
but this does not happen for Free Pascal nor for GPC. */
@@ -2761,10 +2754,10 @@ Index: gdb-7.9.90.20150709/gdb/p-lang.c
i = rep1 - 1;
things_printed += options->repeat_count_threshold;
need_comma = 1;
-Index: gdb-7.9.90.20150709/gdb/p-lang.h
+Index: gdb-7.10.50.20151027/gdb/p-lang.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/p-lang.h 2015-07-09 18:24:39.001356162 +0200
-+++ gdb-7.9.90.20150709/gdb/p-lang.h 2015-07-09 18:24:42.246383843 +0200
+--- gdb-7.10.50.20151027.orig/gdb/p-lang.h 2015-11-02 21:23:11.219351699 +0100
++++ gdb-7.10.50.20151027/gdb/p-lang.h 2015-11-02 21:23:13.226364905 +0100
@@ -36,7 +36,7 @@ extern void pascal_print_type (struct ty
extern void pascal_print_typedef (struct type *, struct symbol *,
struct ui_file *);
@@ -2799,10 +2792,10 @@ Index: gdb-7.9.90.20150709/gdb/p-lang.h
CORE_ADDR, struct ui_file *,
int,
const struct value *,
-Index: gdb-7.9.90.20150709/gdb/p-valprint.c
+Index: gdb-7.10.50.20151027/gdb/p-valprint.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/p-valprint.c 2015-07-09 18:24:39.001356162 +0200
-+++ gdb-7.9.90.20150709/gdb/p-valprint.c 2015-07-09 18:24:42.247383851 +0200
+--- gdb-7.10.50.20151027.orig/gdb/p-valprint.c 2015-11-02 21:23:11.220351706 +0100
++++ gdb-7.10.50.20151027/gdb/p-valprint.c 2015-11-02 21:23:13.226364905 +0100
@@ -57,7 +57,7 @@ static const struct generic_val_print_de
void
@@ -2864,10 +2857,10 @@ Index: gdb-7.9.90.20150709/gdb/p-valprint.c
int skip = 0;
if (BASETYPE_VIA_VIRTUAL (type, i))
-Index: gdb-7.9.90.20150709/gdb/ppc-linux-nat.c
+Index: gdb-7.10.50.20151027/gdb/ppc-linux-nat.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/ppc-linux-nat.c 2015-07-09 18:24:39.002356171 +0200
-+++ gdb-7.9.90.20150709/gdb/ppc-linux-nat.c 2015-07-09 18:24:42.247383851 +0200
+--- gdb-7.10.50.20151027.orig/gdb/ppc-linux-nat.c 2015-11-02 21:23:11.221351713 +0100
++++ gdb-7.10.50.20151027/gdb/ppc-linux-nat.c 2015-11-02 21:23:13.227364912 +0100
@@ -1449,7 +1449,7 @@ ppc_linux_can_use_hw_breakpoint (struct
static int
@@ -2877,10 +2870,10 @@ Index: gdb-7.9.90.20150709/gdb/ppc-linux-nat.c
{
/* Handle sub-8-byte quantities. */
if (len <= 0)
-Index: gdb-7.9.90.20150709/gdb/printcmd.c
+Index: gdb-7.10.50.20151027/gdb/printcmd.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/printcmd.c 2015-07-09 18:24:39.003356179 +0200
-+++ gdb-7.9.90.20150709/gdb/printcmd.c 2015-07-09 18:24:42.248383860 +0200
+--- gdb-7.10.50.20151027.orig/gdb/printcmd.c 2015-11-02 21:23:11.221351713 +0100
++++ gdb-7.10.50.20151027/gdb/printcmd.c 2015-11-02 21:23:13.227364912 +0100
@@ -274,7 +274,7 @@ print_formatted (struct value *val, int
struct ui_file *stream)
{
@@ -2890,7 +2883,7 @@ Index: gdb-7.9.90.20150709/gdb/printcmd.c
if (VALUE_LVAL (val) == lval_memory)
next_address = value_address (val) + len;
-@@ -352,7 +352,7 @@ print_scalar_formatted (const void *vala
+@@ -352,7 +352,7 @@ print_scalar_formatted (const gdb_byte *
{
struct gdbarch *gdbarch = get_type_arch (type);
LONGEST val_long = 0;
@@ -2899,11 +2892,11 @@ Index: gdb-7.9.90.20150709/gdb/printcmd.c
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
/* String printing should go through val_print_scalar_formatted. */
-Index: gdb-7.9.90.20150709/gdb/procfs.c
+Index: gdb-7.10.50.20151027/gdb/procfs.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/procfs.c 2015-07-09 18:24:39.004356188 +0200
-+++ gdb-7.9.90.20150709/gdb/procfs.c 2015-07-09 18:24:42.249383868 +0200
-@@ -4859,7 +4859,7 @@ procfs_remove_watchpoint (struct target_
+--- gdb-7.10.50.20151027.orig/gdb/procfs.c 2015-11-02 21:23:11.223351726 +0100
++++ gdb-7.10.50.20151027/gdb/procfs.c 2015-11-02 21:23:13.228364918 +0100
+@@ -4863,7 +4863,7 @@ procfs_remove_watchpoint (struct target_
static int
procfs_region_ok_for_hw_watchpoint (struct target_ops *self,
@@ -2912,10 +2905,10 @@ Index: gdb-7.9.90.20150709/gdb/procfs.c
{
/* The man page for proc(4) on Solaris 2.6 and up says that the
system can support "thousands" of hardware watchpoints, but gives
-Index: gdb-7.9.90.20150709/gdb/python/py-prettyprint.c
+Index: gdb-7.10.50.20151027/gdb/python/py-prettyprint.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/python/py-prettyprint.c 2015-07-09 18:24:39.004356188 +0200
-+++ gdb-7.9.90.20150709/gdb/python/py-prettyprint.c 2015-07-09 18:24:42.249383868 +0200
+--- gdb-7.10.50.20151027.orig/gdb/python/py-prettyprint.c 2015-11-02 21:23:11.223351726 +0100
++++ gdb-7.10.50.20151027/gdb/python/py-prettyprint.c 2015-11-02 21:23:13.229364925 +0100
@@ -703,7 +703,7 @@ print_children (PyObject *printer, const
enum ext_lang_rc
gdbpy_apply_val_pretty_printer (const struct extension_language_defn *extlang,
@@ -2925,11 +2918,11 @@ Index: gdb-7.9.90.20150709/gdb/python/py-prettyprint.c
struct ui_file *stream, int recurse,
const struct value *val,
const struct value_print_options *options,
-Index: gdb-7.9.90.20150709/gdb/regcache.c
+Index: gdb-7.10.50.20151027/gdb/regcache.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/regcache.c 2015-07-09 18:24:39.005356196 +0200
-+++ gdb-7.9.90.20150709/gdb/regcache.c 2015-07-09 18:24:42.250383877 +0200
-@@ -949,7 +949,7 @@ typedef void (regcache_write_ftype) (str
+--- gdb-7.10.50.20151027.orig/gdb/regcache.c 2015-11-02 21:23:11.224351732 +0100
++++ gdb-7.10.50.20151027/gdb/regcache.c 2015-11-02 21:23:13.229364925 +0100
+@@ -958,7 +958,7 @@ typedef void (regcache_write_ftype) (str
static enum register_status
regcache_xfer_part (struct regcache *regcache, int regnum,
@@ -2938,7 +2931,7 @@ Index: gdb-7.9.90.20150709/gdb/regcache.c
enum register_status (*read) (struct regcache *regcache,
int regnum,
gdb_byte *buf),
-@@ -993,7 +993,7 @@ regcache_xfer_part (struct regcache *reg
+@@ -1002,7 +1002,7 @@ regcache_xfer_part (struct regcache *reg
enum register_status
regcache_raw_read_part (struct regcache *regcache, int regnum,
@@ -2947,7 +2940,7 @@ Index: gdb-7.9.90.20150709/gdb/regcache.c
{
struct regcache_descr *descr = regcache->descr;
-@@ -1004,7 +1004,7 @@ regcache_raw_read_part (struct regcache
+@@ -1013,7 +1013,7 @@ regcache_raw_read_part (struct regcache
void
regcache_raw_write_part (struct regcache *regcache, int regnum,
@@ -2956,7 +2949,7 @@ Index: gdb-7.9.90.20150709/gdb/regcache.c
{
struct regcache_descr *descr = regcache->descr;
-@@ -1015,7 +1015,7 @@ regcache_raw_write_part (struct regcache
+@@ -1024,7 +1024,7 @@ regcache_raw_write_part (struct regcache
enum register_status
regcache_cooked_read_part (struct regcache *regcache, int regnum,
@@ -2965,7 +2958,7 @@ Index: gdb-7.9.90.20150709/gdb/regcache.c
{
struct regcache_descr *descr = regcache->descr;
-@@ -1026,7 +1026,7 @@ regcache_cooked_read_part (struct regcac
+@@ -1035,7 +1035,7 @@ regcache_cooked_read_part (struct regcac
void
regcache_cooked_write_part (struct regcache *regcache, int regnum,
@@ -2974,10 +2967,10 @@ Index: gdb-7.9.90.20150709/gdb/regcache.c
{
struct regcache_descr *descr = regcache->descr;
-Index: gdb-7.9.90.20150709/gdb/regcache.h
+Index: gdb-7.10.50.20151027/gdb/regcache.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/regcache.h 2015-07-09 18:24:39.005356196 +0200
-+++ gdb-7.9.90.20150709/gdb/regcache.h 2015-07-09 18:24:42.250383877 +0200
+--- gdb-7.10.50.20151027.orig/gdb/regcache.h 2015-11-02 21:23:11.224351732 +0100
++++ gdb-7.10.50.20151027/gdb/regcache.h 2015-11-02 21:23:13.230364931 +0100
@@ -92,9 +92,9 @@ extern void regcache_raw_write_unsigned
extern enum register_status
@@ -3005,11 +2998,11 @@ Index: gdb-7.9.90.20150709/gdb/regcache.h
/* Special routines to read/write the PC. */
-Index: gdb-7.9.90.20150709/gdb/remote.c
+Index: gdb-7.10.50.20151027/gdb/remote.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/remote.c 2015-07-09 18:24:39.007356213 +0200
-+++ gdb-7.9.90.20150709/gdb/remote.c 2015-07-09 18:24:42.253383902 +0200
-@@ -8796,7 +8796,7 @@ int remote_hw_breakpoint_limit = -1;
+--- gdb-7.10.50.20151027.orig/gdb/remote.c 2015-11-02 21:23:11.227351752 +0100
++++ gdb-7.10.50.20151027/gdb/remote.c 2015-11-02 21:23:13.232364945 +0100
+@@ -9157,7 +9157,7 @@ int remote_hw_breakpoint_limit = -1;
static int
remote_region_ok_for_hw_watchpoint (struct target_ops *self,
@@ -3018,11 +3011,11 @@ Index: gdb-7.9.90.20150709/gdb/remote.c
{
if (remote_hw_watchpoint_length_limit == 0)
return 0;
-Index: gdb-7.9.90.20150709/gdb/spu-multiarch.c
+Index: gdb-7.10.50.20151027/gdb/spu-multiarch.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/spu-multiarch.c 2015-07-09 18:24:39.008356222 +0200
-+++ gdb-7.9.90.20150709/gdb/spu-multiarch.c 2015-07-09 18:24:42.253383902 +0200
-@@ -117,7 +117,7 @@ spu_thread_architecture (struct target_o
+--- gdb-7.10.50.20151027.orig/gdb/spu-multiarch.c 2015-11-02 21:23:11.228351759 +0100
++++ gdb-7.10.50.20151027/gdb/spu-multiarch.c 2015-11-02 21:23:13.233364951 +0100
+@@ -127,7 +127,7 @@ spu_thread_architecture (struct target_o
/* Override the to_region_ok_for_hw_watchpoint routine. */
static int
spu_region_ok_for_hw_watchpoint (struct target_ops *self,
@@ -3031,10 +3024,10 @@ Index: gdb-7.9.90.20150709/gdb/spu-multiarch.c
{
struct target_ops *ops_beneath = find_target_beneath (self);
-Index: gdb-7.9.90.20150709/gdb/stack.c
+Index: gdb-7.10.50.20151027/gdb/stack.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/stack.c 2015-07-09 18:24:39.009356230 +0200
-+++ gdb-7.9.90.20150709/gdb/stack.c 2015-07-09 18:24:42.254383911 +0200
+--- gdb-7.10.50.20151027.orig/gdb/stack.c 2015-11-02 21:23:11.229351765 +0100
++++ gdb-7.10.50.20151027/gdb/stack.c 2015-11-02 21:23:13.233364951 +0100
@@ -176,7 +176,7 @@ print_stack_frame (struct frame_info *fr
argument (not just the first nameless argument). */
@@ -3073,10 +3066,10 @@ Index: gdb-7.9.90.20150709/gdb/stack.c
if (highest_offset == -1)
start = gdbarch_frame_args_skip (get_frame_arch (frame));
-Index: gdb-7.9.90.20150709/gdb/symmisc.c
+Index: gdb-7.10.50.20151027/gdb/symmisc.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/symmisc.c 2015-07-09 18:24:39.009356230 +0200
-+++ gdb-7.9.90.20150709/gdb/symmisc.c 2015-07-09 18:24:42.254383911 +0200
+--- gdb-7.10.50.20151027.orig/gdb/symmisc.c 2015-11-02 21:23:11.229351765 +0100
++++ gdb-7.10.50.20151027/gdb/symmisc.c 2015-11-02 21:23:13.234364958 +0100
@@ -534,11 +534,11 @@ print_symbol (void *args)
case LOC_CONST_BYTES:
@@ -3092,10 +3085,10 @@ Index: gdb-7.9.90.20150709/gdb/symmisc.c
for (i = 0; i < TYPE_LENGTH (type); i++)
fprintf_filtered (outfile, " %02x",
(unsigned) SYMBOL_VALUE_BYTES (symbol)[i]);
-Index: gdb-7.9.90.20150709/gdb/target.c
+Index: gdb-7.10.50.20151027/gdb/target.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/target.c 2015-07-09 18:24:39.010356239 +0200
-+++ gdb-7.9.90.20150709/gdb/target.c 2015-07-09 18:24:42.255383919 +0200
+--- gdb-7.10.50.20151027.orig/gdb/target.c 2015-11-02 21:23:11.230351772 +0100
++++ gdb-7.10.50.20151027/gdb/target.c 2015-11-02 21:23:13.234364958 +0100
@@ -54,7 +54,7 @@ static int default_watchpoint_addr_withi
CORE_ADDR, CORE_ADDR, int);
@@ -3105,7 +3098,7 @@ Index: gdb-7.9.90.20150709/gdb/target.c
static void default_rcmd (struct target_ops *, const char *, struct ui_file *);
-@@ -3085,7 +3085,7 @@ target_fileio_read_stralloc (struct infe
+@@ -3132,7 +3132,7 @@ target_fileio_read_stralloc (struct infe
static int
default_region_ok_for_hw_watchpoint (struct target_ops *self,
@@ -3114,11 +3107,11 @@ Index: gdb-7.9.90.20150709/gdb/target.c
{
return (len <= gdbarch_ptr_bit (target_gdbarch ()) / TARGET_CHAR_BIT);
}
-Index: gdb-7.9.90.20150709/gdb/target.h
+Index: gdb-7.10.50.20151027/gdb/target.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/target.h 2015-07-09 18:24:39.010356239 +0200
-+++ gdb-7.9.90.20150709/gdb/target.h 2015-07-09 18:24:42.256383928 +0200
-@@ -547,7 +547,7 @@ struct target_ops
+--- gdb-7.10.50.20151027.orig/gdb/target.h 2015-11-02 21:23:11.231351779 +0100
++++ gdb-7.10.50.20151027/gdb/target.h 2015-11-02 21:23:13.235364964 +0100
+@@ -549,7 +549,7 @@ struct target_ops
/* Documentation of this routine is provided with the corresponding
target_* macro. */
int (*to_region_ok_for_hw_watchpoint) (struct target_ops *,
@@ -3127,11 +3120,11 @@ Index: gdb-7.9.90.20150709/gdb/target.h
TARGET_DEFAULT_FUNC (default_region_ok_for_hw_watchpoint);
int (*to_can_accel_watchpoint_condition) (struct target_ops *,
-Index: gdb-7.9.90.20150709/gdb/tracepoint.c
+Index: gdb-7.10.50.20151027/gdb/tracepoint.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/tracepoint.c 2015-07-09 18:24:39.012356256 +0200
-+++ gdb-7.9.90.20150709/gdb/tracepoint.c 2015-07-09 18:24:42.257383936 +0200
-@@ -928,13 +928,13 @@ add_register (struct collection_list *co
+--- gdb-7.10.50.20151027.orig/gdb/tracepoint.c 2015-11-02 21:23:11.233351792 +0100
++++ gdb-7.10.50.20151027/gdb/tracepoint.c 2015-11-02 21:23:13.236364971 +0100
+@@ -930,13 +930,13 @@ add_register (struct collection_list *co
static void
add_memrange (struct collection_list *memranges,
int type, bfd_signed_vma base,
@@ -3147,7 +3140,7 @@ Index: gdb-7.9.90.20150709/gdb/tracepoint.c
}
/* type: memrange_absolute == memory, other n == basereg */
-@@ -964,7 +964,7 @@ collect_symbol (struct collection_list *
+@@ -966,7 +966,7 @@ collect_symbol (struct collection_list *
CORE_ADDR scope,
int trace_string)
{
@@ -3156,7 +3149,7 @@ Index: gdb-7.9.90.20150709/gdb/tracepoint.c
unsigned int reg;
bfd_signed_vma offset;
int treat_as_expr = 0;
-@@ -988,8 +988,8 @@ collect_symbol (struct collection_list *
+@@ -990,8 +990,8 @@ collect_symbol (struct collection_list *
char tmp[40];
sprintf_vma (tmp, offset);
@@ -3167,7 +3160,7 @@ Index: gdb-7.9.90.20150709/gdb/tracepoint.c
tmp /* address */);
}
/* A struct may be a C++ class with static fields, go to general
-@@ -1021,8 +1021,8 @@ collect_symbol (struct collection_list *
+@@ -1023,8 +1023,8 @@ collect_symbol (struct collection_list *
offset = frame_offset + SYMBOL_VALUE (sym);
if (info_verbose)
{
@@ -3178,7 +3171,7 @@ Index: gdb-7.9.90.20150709/gdb/tracepoint.c
printf_vma (offset);
printf_filtered (" from frame ptr reg %d\n", reg);
}
-@@ -1033,8 +1033,8 @@ collect_symbol (struct collection_list *
+@@ -1035,8 +1035,8 @@ collect_symbol (struct collection_list *
offset = 0;
if (info_verbose)
{
@@ -3189,7 +3182,7 @@ Index: gdb-7.9.90.20150709/gdb/tracepoint.c
printf_vma (offset);
printf_filtered (" from reg %d\n", reg);
}
-@@ -1045,8 +1045,8 @@ collect_symbol (struct collection_list *
+@@ -1047,8 +1047,8 @@ collect_symbol (struct collection_list *
offset = frame_offset + SYMBOL_VALUE (sym);
if (info_verbose)
{
@@ -3200,7 +3193,7 @@ Index: gdb-7.9.90.20150709/gdb/tracepoint.c
printf_vma (offset);
printf_filtered (" from frame ptr reg %d\n", reg);
}
-@@ -2709,7 +2709,8 @@ scope_info (char *args, int from_tty)
+@@ -2708,7 +2708,8 @@ scope_info (char *args, int from_tty)
const char *symname;
char *save_args = args;
struct block_iterator iter;
@@ -3209,8 +3202,8 @@ Index: gdb-7.9.90.20150709/gdb/tracepoint.c
+ LONGEST j;
struct gdbarch *gdbarch;
int regno;
-
-@@ -2845,8 +2846,11 @@ scope_info (char *args, int from_tty)
+ struct event_location *location;
+@@ -2852,8 +2853,11 @@ scope_info (char *args, int from_tty)
}
}
if (SYMBOL_TYPE (sym))
@@ -3224,11 +3217,11 @@ Index: gdb-7.9.90.20150709/gdb/tracepoint.c
}
if (BLOCK_FUNCTION (block))
break;
-Index: gdb-7.9.90.20150709/gdb/typeprint.c
+Index: gdb-7.10.50.20151027/gdb/typeprint.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/typeprint.c 2015-07-09 18:24:39.013356264 +0200
-+++ gdb-7.9.90.20150709/gdb/typeprint.c 2015-07-09 18:24:42.257383936 +0200
-@@ -404,7 +404,7 @@ whatis_exp (char *exp, int show)
+--- gdb-7.10.50.20151027.orig/gdb/typeprint.c 2015-11-02 21:23:11.234351798 +0100
++++ gdb-7.10.50.20151027/gdb/typeprint.c 2015-11-02 21:23:13.236364971 +0100
+@@ -406,7 +406,7 @@ whatis_exp (char *exp, int show)
struct type *real_type = NULL;
struct type *type;
int full = 0;
@@ -3237,37 +3230,27 @@ Index: gdb-7.9.90.20150709/gdb/typeprint.c
int using_enc = 0;
struct value_print_options opts;
struct type_print_options flags = default_ptype_flags;
-Index: gdb-7.9.90.20150709/gdb/valarith.c
+Index: gdb-7.10.50.20151027/gdb/valarith.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/valarith.c 2015-07-09 18:24:39.014356273 +0200
-+++ gdb-7.9.90.20150709/gdb/valarith.c 2015-07-09 18:24:42.257383936 +0200
-@@ -188,12 +188,13 @@ value_subscript (struct value *array, LO
+--- gdb-7.10.50.20151027.orig/gdb/valarith.c 2015-11-02 21:23:11.234351798 +0100
++++ gdb-7.10.50.20151027/gdb/valarith.c 2015-11-02 21:23:59.822671496 +0100
+@@ -188,12 +188,12 @@ value_subscript (struct value *array, LO
to doubles, but no longer does. */
struct value *
-value_subscripted_rvalue (struct value *array, LONGEST index, int lowerbound)
-+value_subscripted_rvalue (struct value *array, LONGEST index,
-+ LONGEST lowerbound)
++value_subscripted_rvalue (struct value *array, LONGEST index, LONGEST lowerbound)
{
struct type *array_type = check_typedef (value_type (array));
struct type *elt_type = check_typedef (TYPE_TARGET_TYPE (array_type));
-- unsigned int elt_size = TYPE_LENGTH (elt_type);
+- unsigned int elt_size = type_length_units (elt_type);
- unsigned int elt_offs;
-+ ULONGEST elt_size = TYPE_LENGTH (elt_type);
++ ULONGEST elt_size = type_length_units (elt_type);
+ ULONGEST elt_offs;
LONGEST elt_stride = TYPE_BYTE_STRIDE (TYPE_INDEX_TYPE (array_type));
struct value *v;
-@@ -202,7 +203,7 @@ value_subscripted_rvalue (struct value *
- if (TYPE_NOT_ALLOCATED (array_type))
- error (_("no such vector element because not allocated"));
-
-- elt_offs = longest_to_int (index - lowerbound);
-+ elt_offs = index - lowerbound;
-
- if (elt_stride > 0)
- elt_offs *= elt_stride;
-@@ -678,7 +679,7 @@ value_concat (struct value *arg1, struct
+@@ -678,7 +678,7 @@ value_concat (struct value *arg1, struct
struct value *inval1;
struct value *inval2;
struct value *outval = NULL;
@@ -3276,7 +3259,7 @@ Index: gdb-7.9.90.20150709/gdb/valarith.c
int count, idx;
char *ptr;
char inchar;
-@@ -1531,7 +1532,7 @@ value_binop (struct value *arg1, struct
+@@ -1531,7 +1531,7 @@ value_binop (struct value *arg1, struct
int
value_logical_not (struct value *arg1)
{
@@ -3285,7 +3268,7 @@ Index: gdb-7.9.90.20150709/gdb/valarith.c
const gdb_byte *p;
struct type *type1;
-@@ -1562,11 +1563,11 @@ value_logical_not (struct value *arg1)
+@@ -1562,11 +1562,11 @@ value_logical_not (struct value *arg1)
static int
value_strcmp (struct value *arg1, struct value *arg2)
{
@@ -3300,10 +3283,10 @@ Index: gdb-7.9.90.20150709/gdb/valarith.c
for (i = 0; i < len; i++)
{
-Index: gdb-7.9.90.20150709/gdb/valops.c
+Index: gdb-7.10.50.20151027/gdb/valops.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/valops.c 2015-07-09 18:24:39.019356316 +0200
-+++ gdb-7.9.90.20150709/gdb/valops.c 2015-07-09 18:26:02.032064420 +0200
+--- gdb-7.10.50.20151027.orig/gdb/valops.c 2015-11-02 21:23:11.240351838 +0100
++++ gdb-7.10.50.20151027/gdb/valops.c 2015-11-02 21:23:13.238364984 +0100
@@ -51,7 +51,7 @@ static struct value *search_struct_field
static struct value *search_struct_method (const char *, struct value **,
@@ -3425,7 +3408,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
int stack, CORE_ADDR memaddr,
gdb_byte *buffer, size_t length)
{
-@@ -1054,7 +1056,7 @@ value_assign (struct value *toval, struc
+@@ -1057,7 +1059,7 @@ value_assign (struct value *toval, struc
{
const gdb_byte *dest_buffer;
CORE_ADDR changed_addr;
@@ -3434,7 +3417,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
gdb_byte buffer[sizeof (LONGEST)];
if (value_bitsize (toval))
-@@ -1123,7 +1125,7 @@ value_assign (struct value *toval, struc
+@@ -1126,7 +1128,7 @@ value_assign (struct value *toval, struc
if (value_bitsize (toval))
{
struct value *parent = value_parent (toval);
@@ -3443,7 +3426,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
int changed_len;
gdb_byte buffer[sizeof (LONGEST)];
int optim, unavail;
-@@ -1604,7 +1606,7 @@ value_array (int lowbound, int highbound
+@@ -1590,7 +1592,7 @@ value_array (int lowbound, int highbound
{
int nelem;
int idx;
@@ -3452,7 +3435,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
struct value *val;
struct type *arraytype;
-@@ -1779,7 +1781,7 @@ typecmp (int staticp, int varargs, int n
+@@ -1766,7 +1768,7 @@ typecmp (int staticp, int varargs, int n
static void
update_search_result (struct value **result_ptr, struct value *v,
@@ -3461,7 +3444,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
const char *name, struct type *type)
{
if (v != NULL)
-@@ -1803,10 +1805,10 @@ update_search_result (struct value **res
+@@ -1790,10 +1792,10 @@ update_search_result (struct value **res
lookup is ambiguous. */
static void
@@ -3474,7 +3457,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
struct type *outermost_type)
{
int i;
-@@ -1853,7 +1855,7 @@ do_search_struct_field (const char *name
+@@ -1840,7 +1842,7 @@ do_search_struct_field (const char *name
<variant field>. */
struct value *v = NULL;
@@ -3483,7 +3466,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
/* This is pretty gross. In G++, the offset in an
anonymous union is relative to the beginning of the
-@@ -1892,7 +1894,7 @@ do_search_struct_field (const char *name
+@@ -1879,7 +1881,7 @@ do_search_struct_field (const char *name
&& (strcmp_iw (name,
TYPE_BASECLASS_NAME (type,
i)) == 0));
@@ -3492,7 +3475,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
if (BASETYPE_VIA_VIRTUAL (type, i))
{
-@@ -1968,7 +1970,7 @@ search_struct_field (const char *name, s
+@@ -1955,7 +1957,7 @@ search_struct_field (const char *name, s
struct type *type, int looking_for_baseclass)
{
struct value *result = NULL;
@@ -3501,7 +3484,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
do_search_struct_field (name, arg1, 0, type, looking_for_baseclass,
&result, &boffset, type);
-@@ -1985,7 +1987,7 @@ search_struct_field (const char *name, s
+@@ -1972,7 +1974,7 @@ search_struct_field (const char *name, s
static struct value *
search_struct_method (const char *name, struct value **arg1p,
@@ -3510,7 +3493,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
int *static_memfuncp, struct type *type)
{
int i;
-@@ -2049,8 +2051,8 @@ search_struct_method (const char *name,
+@@ -2036,8 +2038,8 @@ search_struct_method (const char *name,
for (i = TYPE_N_BASECLASSES (type) - 1; i >= 0; i--)
{
@@ -3521,7 +3504,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
if (BASETYPE_VIA_VIRTUAL (type, i))
{
-@@ -2285,10 +2287,10 @@ value_struct_elt_bitpos (struct value **
+@@ -2272,10 +2274,10 @@ value_struct_elt_bitpos (struct value **
static void
find_method_list (struct value **argp, const char *method,
@@ -3534,7 +3517,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
{
int i;
struct fn_field *f = NULL;
-@@ -2345,7 +2347,7 @@ find_method_list (struct value **argp, c
+@@ -2332,7 +2334,7 @@ find_method_list (struct value **argp, c
extension methods. */
for (i = TYPE_N_BASECLASSES (type) - 1; i >= 0; i--)
{
@@ -3543,7 +3526,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
if (BASETYPE_VIA_VIRTUAL (type, i))
{
-@@ -2388,7 +2390,7 @@ value_find_oload_method_list (struct val
+@@ -2375,7 +2377,7 @@ value_find_oload_method_list (struct val
int offset, struct fn_field **fn_list,
int *num_fns,
VEC (xmethod_worker_ptr) **xm_worker_vec,
@@ -3552,7 +3535,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
{
struct type *t;
-@@ -2499,7 +2501,7 @@ find_overload_match (struct value **args
+@@ -2486,7 +2488,7 @@ find_overload_match (struct value **args
/* Number of overloaded instances being considered. */
int num_fns = 0;
struct type *basetype = NULL;
@@ -3561,7 +3544,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
struct cleanup *all_cleanups = make_cleanup (null_cleanup, NULL);
-@@ -3314,7 +3316,7 @@ compare_parameters (struct type *t1, str
+@@ -3300,7 +3302,7 @@ compare_parameters (struct type *t1, str
the form "DOMAIN::NAME". */
static struct value *
@@ -3570,7 +3553,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
struct type *curtype, const char *name,
struct type *intype,
int want_address,
-@@ -3348,7 +3350,7 @@ value_struct_elt_for_reference (struct t
+@@ -3334,7 +3336,7 @@ value_struct_elt_for_reference (struct t
if (want_address)
return value_from_longest
(lookup_memberptr_type (TYPE_FIELD_TYPE (t, i), domain),
@@ -3579,7 +3562,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
else if (noside != EVAL_NORMAL)
return allocate_value (TYPE_FIELD_TYPE (t, i));
else
-@@ -3516,7 +3518,7 @@ value_struct_elt_for_reference (struct t
+@@ -3502,7 +3504,7 @@ value_struct_elt_for_reference (struct t
for (i = TYPE_N_BASECLASSES (t) - 1; i >= 0; i--)
{
struct value *v;
@@ -3588,7 +3571,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
if (BASETYPE_VIA_VIRTUAL (t, i))
base_offset = 0;
-@@ -3597,7 +3599,7 @@ value_maybe_namespace_elt (const struct
+@@ -3583,7 +3585,7 @@ value_maybe_namespace_elt (const struct
struct type *
value_rtti_indirect_type (struct value *v, int *full,
@@ -3597,7 +3580,7 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
{
struct value *target = NULL;
struct type *type, *real_type, *target_type;
-@@ -3665,12 +3667,12 @@ value_rtti_indirect_type (struct value *
+@@ -3651,12 +3653,12 @@ value_rtti_indirect_type (struct value *
struct value *
value_full_object (struct value *argp,
struct type *rtype,
@@ -3612,11 +3595,11 @@ Index: gdb-7.9.90.20150709/gdb/valops.c
int using_enc = 0;
struct value *new_val;
-Index: gdb-7.9.90.20150709/gdb/valprint.c
+Index: gdb-7.10.50.20151027/gdb/valprint.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/valprint.c 2015-07-09 18:24:39.020356324 +0200
-+++ gdb-7.9.90.20150709/gdb/valprint.c 2015-07-09 18:24:42.260383962 +0200
-@@ -298,7 +298,7 @@ val_print_scalar_type_p (struct type *ty
+--- gdb-7.10.50.20151027.orig/gdb/valprint.c 2015-11-02 21:23:11.242351851 +0100
++++ gdb-7.10.50.20151027/gdb/valprint.c 2015-11-02 21:23:13.239364991 +0100
+@@ -299,7 +299,7 @@ val_print_scalar_type_p (struct type *ty
int
valprint_check_validity (struct ui_file *stream,
struct type *type,
@@ -3624,8 +3607,8 @@ Index: gdb-7.9.90.20150709/gdb/valprint.c
+ LONGEST embedded_offset,
const struct value *val)
{
- CHECK_TYPEDEF (type);
-@@ -396,7 +396,7 @@ val_print_not_associated (struct ui_file
+ type = check_typedef (type);
+@@ -834,7 +834,7 @@ generic_val_print_complex (struct type *
void
generic_val_print (struct type *type, const gdb_byte *valaddr,
@@ -3634,7 +3617,7 @@ Index: gdb-7.9.90.20150709/gdb/valprint.c
struct ui_file *stream, int recurse,
const struct value *original_value,
const struct value_print_options *options,
-@@ -758,7 +758,7 @@ generic_val_print (struct type *type, co
+@@ -969,7 +969,7 @@ generic_val_print (struct type *type, co
RECURSE. */
void
@@ -3643,7 +3626,7 @@ Index: gdb-7.9.90.20150709/gdb/valprint.c
CORE_ADDR address, struct ui_file *stream, int recurse,
const struct value *val,
const struct value_print_options *options,
-@@ -998,7 +998,7 @@ val_print_type_code_flags (struct type *
+@@ -1221,7 +1221,7 @@ val_print_type_code_flags (struct type *
void
val_print_scalar_formatted (struct type *type,
@@ -3652,7 +3635,7 @@ Index: gdb-7.9.90.20150709/gdb/valprint.c
const struct value *val,
const struct value_print_options *options,
int size,
-@@ -1540,7 +1540,7 @@ print_decimal_chars (struct ui_file *str
+@@ -1766,7 +1766,7 @@ print_decimal_chars (struct ui_file *str
void
print_hex_chars (struct ui_file *stream, const gdb_byte *valaddr,
@@ -3661,7 +3644,7 @@ Index: gdb-7.9.90.20150709/gdb/valprint.c
{
const gdb_byte *p;
-@@ -1657,22 +1657,22 @@ maybe_print_array_index (struct type *in
+@@ -1883,22 +1883,22 @@ maybe_print_array_index (struct type *in
void
val_print_array_elements (struct type *type,
@@ -3690,7 +3673,7 @@ Index: gdb-7.9.90.20150709/gdb/valprint.c
LONGEST low_bound, high_bound;
LONGEST low_pos, high_pos;
-@@ -1762,7 +1762,7 @@ val_print_array_elements (struct type *t
+@@ -1988,7 +1988,7 @@ val_print_array_elements (struct type *t
address, stream, recurse + 1, val, options,
current_language);
annotate_elt_rep (reps);
@@ -3699,7 +3682,7 @@ Index: gdb-7.9.90.20150709/gdb/valprint.c
annotate_elt_rep_end ();
i = rep1 - 1;
-@@ -2418,7 +2418,7 @@ print_converted_chars_to_obstack (struct
+@@ -2644,7 +2644,7 @@ print_converted_chars_to_obstack (struct
void
generic_printstr (struct ui_file *stream, struct type *type,
@@ -3708,10 +3691,10 @@ Index: gdb-7.9.90.20150709/gdb/valprint.c
const char *encoding, int force_ellipses,
int quote_char, int c_style_terminator,
const struct value_print_options *options)
-Index: gdb-7.9.90.20150709/gdb/valprint.h
+Index: gdb-7.10.50.20151027/gdb/valprint.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/valprint.h 2015-07-09 18:24:39.021356333 +0200
-+++ gdb-7.9.90.20150709/gdb/valprint.h 2015-07-09 18:24:42.260383962 +0200
+--- gdb-7.10.50.20151027.orig/gdb/valprint.h 2015-11-02 21:23:11.242351851 +0100
++++ gdb-7.10.50.20151027/gdb/valprint.h 2015-11-02 21:23:13.239364991 +0100
@@ -115,11 +115,11 @@ extern void maybe_print_array_index (str
struct ui_file *stream,
const struct value_print_options *);
@@ -3762,10 +3745,10 @@ Index: gdb-7.9.90.20150709/gdb/valprint.h
const char *encoding, int force_ellipses,
int quote_char, int c_style_terminator,
const struct value_print_options *options);
-Index: gdb-7.9.90.20150709/gdb/value.c
+Index: gdb-7.10.50.20151027/gdb/value.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/value.c 2015-07-09 18:24:39.026356375 +0200
-+++ gdb-7.9.90.20150709/gdb/value.c 2015-07-09 18:24:42.261383970 +0200
+--- gdb-7.10.50.20151027.orig/gdb/value.c 2015-11-02 21:23:11.248351890 +0100
++++ gdb-7.10.50.20151027/gdb/value.c 2015-11-02 21:23:13.241365004 +0100
@@ -66,10 +66,10 @@ struct internal_function
struct range
{
@@ -3800,9 +3783,9 @@ Index: gdb-7.9.90.20150709/gdb/value.c
range_s what;
int i;
@@ -240,7 +240,7 @@ struct value
- lval == lval_register, this is a further offset from
- location.address within the registers structure. Note also the
- member embedded_offset below. */
+ the address. If lval == lval_register, this is a further offset from
+ location.address within the registers structure. Note also the member
+ embedded_offset below. */
- int offset;
+ LONGEST offset;
@@ -3819,8 +3802,8 @@ Index: gdb-7.9.90.20150709/gdb/value.c
/* Values are stored in a chain, so that they can be deleted easily
over calls to the inferior. Values assigned to internal
-@@ -342,7 +342,7 @@ struct value
- };
+@@ -350,7 +350,7 @@ get_value_arch (const struct value *valu
+ }
int
-value_bits_available (const struct value *value, int offset, int length)
@@ -3828,7 +3811,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
{
gdb_assert (!value->lazy);
-@@ -350,7 +350,8 @@ value_bits_available (const struct value
+@@ -358,7 +358,8 @@ value_bits_available (const struct value
}
int
@@ -3838,7 +3821,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
{
return value_bits_available (value,
offset * TARGET_CHAR_BIT,
-@@ -358,7 +359,8 @@ value_bytes_available (const struct valu
+@@ -366,7 +367,8 @@ value_bytes_available (const struct valu
}
int
@@ -3848,7 +3831,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
{
gdb_assert (!value->lazy);
-@@ -420,7 +422,8 @@ value_entirely_optimized_out (struct val
+@@ -428,7 +430,8 @@ value_entirely_optimized_out (struct val
OFFSET bits, and extending for the next LENGTH bits. */
static void
@@ -3858,7 +3841,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
{
range_s newr;
int i;
-@@ -591,7 +594,8 @@ mark_value_bits_unavailable (struct valu
+@@ -599,7 +602,8 @@ mark_value_bits_unavailable (struct valu
}
void
@@ -3868,7 +3851,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
{
mark_value_bits_unavailable (value,
offset * TARGET_CHAR_BIT,
-@@ -605,7 +609,7 @@ mark_value_bytes_unavailable (struct val
+@@ -613,7 +617,7 @@ mark_value_bytes_unavailable (struct val
static int
find_first_range_overlap (VEC(range_s) *ranges, int pos,
@@ -3877,7 +3860,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
{
range_s *r;
int i;
-@@ -801,9 +805,9 @@ find_first_range_overlap_and_match (stru
+@@ -809,9 +813,9 @@ find_first_range_overlap_and_match (stru
Return true if the available bits match. */
static int
@@ -3890,7 +3873,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
{
/* Each array element corresponds to a ranges source (unavailable,
optimized out). '1' is for VAL1, '2' for VAL2. */
-@@ -863,9 +867,9 @@ value_contents_bits_eq (const struct val
+@@ -871,9 +875,9 @@ value_contents_bits_eq (const struct val
}
int
@@ -3903,7 +3886,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
{
return value_contents_bits_eq (val1, offset1 * TARGET_CHAR_BIT,
val2, offset2 * TARGET_CHAR_BIT,
-@@ -1029,13 +1033,13 @@ deprecated_set_value_type (struct value
+@@ -1037,13 +1041,13 @@ deprecated_set_value_type (struct value
value->type = type;
}
@@ -3919,7 +3902,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
{
value->offset = offset;
}
-@@ -1246,8 +1250,9 @@ value_ranges_copy_adjusted (struct value
+@@ -1257,8 +1261,9 @@ value_ranges_copy_adjusted (struct value
DST_OFFSET+LENGTH) range are wholly available. */
void
@@ -3930,8 +3913,8 @@ Index: gdb-7.9.90.20150709/gdb/value.c
+ ssize_t length)
{
range_s *r;
- int i;
-@@ -1293,8 +1298,8 @@ value_contents_copy_raw (struct value *d
+ int src_bit_offset, dst_bit_offset, bit_length;
+@@ -1305,8 +1310,8 @@ value_contents_copy_raw (struct value *d
DST_OFFSET+LENGTH) range are wholly available. */
void
@@ -3942,7 +3925,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
{
if (src->lazy)
value_fetch_lazy (src);
-@@ -1358,7 +1363,8 @@ value_optimized_out (struct value *value
+@@ -1370,7 +1375,8 @@ value_optimized_out (struct value *value
the following LENGTH bytes. */
void
@@ -3952,7 +3935,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
{
mark_value_bits_optimized_out (value,
offset * TARGET_CHAR_BIT,
-@@ -1368,14 +1374,15 @@ mark_value_bytes_optimized_out (struct v
+@@ -1380,14 +1386,15 @@ mark_value_bytes_optimized_out (struct v
/* See value.h. */
void
@@ -3970,7 +3953,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
{
if (value->lval != lval_computed
|| !value->location.computed.funcs->check_synthetic_pointer)
-@@ -1385,26 +1392,26 @@ value_bits_synthetic_pointer (const stru
+@@ -1397,26 +1404,26 @@ value_bits_synthetic_pointer (const stru
length);
}
@@ -4001,7 +3984,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
{
value->pointed_to_offset = val;
}
-@@ -2287,7 +2294,7 @@ get_internalvar_function (struct interna
+@@ -2295,7 +2302,7 @@ get_internalvar_function (struct interna
}
void
@@ -4010,7 +3993,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
int bitsize, struct value *newval)
{
gdb_byte *addr;
-@@ -3008,7 +3015,7 @@ set_value_enclosing_type (struct value *
+@@ -3020,7 +3027,7 @@ set_value_enclosing_type (struct value *
FIELDNO says which field. */
struct value *
@@ -4019,7 +4002,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
int fieldno, struct type *arg_type)
{
struct value *v;
-@@ -3058,7 +3065,7 @@ value_primitive_field (struct value *arg
+@@ -3072,7 +3079,7 @@ value_primitive_field (struct value *arg
/* This field is actually a base subobject, so preserve the
entire object's contents for later references to virtual
bases, etc. */
@@ -4028,7 +4011,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
/* Lazy register values with offsets are not supported. */
if (VALUE_LVAL (arg1) == lval_register && value_lazy (arg1))
-@@ -3144,7 +3151,7 @@ value_field (struct value *arg1, int fie
+@@ -3159,7 +3166,7 @@ value_field (struct value *arg1, int fie
struct value *
value_fn_field (struct value **arg1p, struct fn_field *f,
int j, struct type *type,
@@ -4037,7 +4020,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
{
struct value *v;
struct type *ftype = TYPE_FN_FIELD_TYPE (f, j);
-@@ -3214,14 +3221,14 @@ value_fn_field (struct value **arg1p, st
+@@ -3229,14 +3236,14 @@ value_fn_field (struct value **arg1p, st
static LONGEST
unpack_bits_as_long (struct type *field_type, const gdb_byte *valaddr,
@@ -4054,7 +4037,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
/* Read the minimum number of bytes required; there may not be
enough bytes to read an entire ULONGEST. */
-@@ -3270,7 +3277,7 @@ unpack_bits_as_long (struct type *field_
+@@ -3285,7 +3292,7 @@ unpack_bits_as_long (struct type *field_
int
unpack_value_field_as_long (struct type *type, const gdb_byte *valaddr,
@@ -4063,7 +4046,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
const struct value *val, LONGEST *result)
{
int bitpos = TYPE_FIELD_BITPOS (type, fieldno);
-@@ -3314,7 +3321,7 @@ unpack_field_as_long (struct type *type,
+@@ -3329,7 +3336,7 @@ unpack_field_as_long (struct type *type,
void
unpack_value_bitfield (struct value *dest_val,
int bitpos, int bitsize,
@@ -4072,7 +4055,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
const struct value *val)
{
enum bfd_endian byte_order;
-@@ -3352,7 +3359,7 @@ unpack_value_bitfield (struct value *des
+@@ -3367,7 +3374,7 @@ unpack_value_bitfield (struct value *des
struct value *
value_field_bitfield (struct type *type, int fieldno,
const gdb_byte *valaddr,
@@ -4081,7 +4064,7 @@ Index: gdb-7.9.90.20150709/gdb/value.c
{
int bitpos = TYPE_FIELD_BITPOS (type, fieldno);
int bitsize = TYPE_FIELD_BITSIZE (type, fieldno);
-@@ -3373,12 +3380,12 @@ value_field_bitfield (struct type *type,
+@@ -3388,12 +3395,12 @@ value_field_bitfield (struct type *type,
void
modify_field (struct type *type, gdb_byte *addr,
@@ -4096,11 +4079,11 @@ Index: gdb-7.9.90.20150709/gdb/value.c
/* Normalize BITPOS. */
addr += bitpos / 8;
-Index: gdb-7.9.90.20150709/gdb/value.h
+Index: gdb-7.10.50.20151027/gdb/value.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/value.h 2015-07-09 18:24:39.027356384 +0200
-+++ gdb-7.9.90.20150709/gdb/value.h 2015-07-09 18:24:42.262383979 +0200
-@@ -131,8 +131,8 @@ extern void set_value_parent (struct val
+--- gdb-7.10.50.20151027.orig/gdb/value.h 2015-11-02 21:23:11.250351904 +0100
++++ gdb-7.10.50.20151027/gdb/value.h 2015-11-02 21:23:13.241365004 +0100
+@@ -135,8 +135,8 @@ extern void set_value_parent (struct val
within the registers structure. Note also the member
embedded_offset below. */
@@ -4111,7 +4094,7 @@ Index: gdb-7.9.90.20150709/gdb/value.h
/* The comment from "struct value" reads: ``Is it modifiable? Only
relevant if lval != not_lval.''. Shouldn't the value instead be
-@@ -201,10 +201,10 @@ extern struct type *value_actual_type (s
+@@ -205,10 +205,10 @@ extern struct type *value_actual_type (s
int resolve_simple_types,
int *real_type_found);
@@ -4126,7 +4109,7 @@ Index: gdb-7.9.90.20150709/gdb/value.h
/* For lval_computed values, this structure holds functions used to
retrieve and set the value (or portions of the value).
-@@ -242,7 +242,7 @@ struct lval_funcs
+@@ -246,7 +246,7 @@ struct lval_funcs
/* If non-NULL, this is used to determine whether the indicated bits
of VALUE are a synthetic pointer. */
int (*check_synthetic_pointer) (const struct value *value,
@@ -4135,7 +4118,7 @@ Index: gdb-7.9.90.20150709/gdb/value.h
/* Return a duplicate of VALUE's closure, for use in a new value.
This may simply return the same closure, if VALUE's is
-@@ -279,7 +279,7 @@ extern struct value *allocate_computed_v
+@@ -283,7 +283,7 @@ extern struct value *allocate_computed_v
Otherwise, return 1. */
extern int valprint_check_validity (struct ui_file *stream, struct type *type,
@@ -4144,7 +4127,7 @@ Index: gdb-7.9.90.20150709/gdb/value.h
const struct value *val);
extern struct value *allocate_optimized_out_value (struct type *type);
-@@ -373,7 +373,8 @@ extern int value_optimized_out (struct v
+@@ -377,7 +377,8 @@ extern int value_optimized_out (struct v
otherwise. */
extern int value_bits_any_optimized_out (const struct value *value,
@@ -4154,7 +4137,7 @@ Index: gdb-7.9.90.20150709/gdb/value.h
/* Like value_optimized_out, but return true iff the whole value is
optimized out. */
-@@ -383,13 +384,13 @@ extern int value_entirely_optimized_out
+@@ -387,13 +388,13 @@ extern int value_entirely_optimized_out
LENGTH bytes as optimized out. */
extern void mark_value_bytes_optimized_out (struct value *value,
@@ -4170,7 +4153,7 @@ Index: gdb-7.9.90.20150709/gdb/value.h
/* Set or return field indicating whether a variable is initialized or
not, based on debugging information supplied by the compiler.
-@@ -472,7 +473,7 @@ extern struct value *coerce_array (struc
+@@ -476,7 +477,7 @@ extern struct value *coerce_array (struc
extending for LENGTH bits are a synthetic pointer. */
extern int value_bits_synthetic_pointer (const struct value *value,
@@ -4179,7 +4162,7 @@ Index: gdb-7.9.90.20150709/gdb/value.h
/* Given a value, determine whether the contents bytes starting at
OFFSET and extending for LENGTH bytes are available. This returns
-@@ -480,7 +481,7 @@ extern int value_bits_synthetic_pointer
+@@ -484,7 +485,7 @@ extern int value_bits_synthetic_pointer
byte is unavailable. */
extern int value_bytes_available (const struct value *value,
@@ -4188,7 +4171,7 @@ Index: gdb-7.9.90.20150709/gdb/value.h
/* Given a value, determine whether the contents bits starting at
OFFSET and extending for LENGTH bits are available. This returns
-@@ -488,7 +489,7 @@ extern int value_bytes_available (const
+@@ -492,7 +493,7 @@ extern int value_bytes_available (const
bit is unavailable. */
extern int value_bits_available (const struct value *value,
@@ -4197,7 +4180,7 @@ Index: gdb-7.9.90.20150709/gdb/value.h
/* Like value_bytes_available, but return false if any byte in the
whole object is unavailable. */
-@@ -502,7 +503,7 @@ extern int value_entirely_unavailable (s
+@@ -506,7 +507,7 @@ extern int value_entirely_unavailable (s
LENGTH bytes as unavailable. */
extern void mark_value_bytes_unavailable (struct value *value,
@@ -4206,7 +4189,7 @@ Index: gdb-7.9.90.20150709/gdb/value.h
/* Mark VALUE's content bits starting at OFFSET and extending for
LENGTH bits as unavailable. */
-@@ -563,9 +564,9 @@ extern void mark_value_bits_unavailable
+@@ -567,9 +568,9 @@ extern void mark_value_bits_unavailable
after the inferior is gone, it works with const values. Therefore,
this routine must not be called with lazy values. */
@@ -4217,9 +4200,9 @@ Index: gdb-7.9.90.20150709/gdb/value.h
+ const struct value *val2, LONGEST offset2,
+ LONGEST length);
- /* Read LENGTH bytes of memory starting at MEMADDR into BUFFER, which
- is (or will be copied to) VAL's contents buffer offset by
-@@ -574,7 +575,7 @@ extern int value_contents_eq (const stru
+ /* Read LENGTH addressable memory units starting at MEMADDR into BUFFER,
+ which is (or will be copied to) VAL's contents buffer offset by
+@@ -578,7 +579,7 @@ extern int value_contents_eq (const stru
memory is likewise unavailable. STACK indicates whether the memory
is known to be stack memory. */
@@ -4228,7 +4211,7 @@ Index: gdb-7.9.90.20150709/gdb/value.h
int stack, CORE_ADDR memaddr,
gdb_byte *buffer, size_t length);
-@@ -610,17 +611,18 @@ extern LONGEST unpack_field_as_long (str
+@@ -614,17 +615,18 @@ extern LONGEST unpack_field_as_long (str
const gdb_byte *valaddr,
int fieldno);
extern int unpack_value_field_as_long (struct type *type, const gdb_byte *valaddr,
@@ -4250,7 +4233,7 @@ Index: gdb-7.9.90.20150709/gdb/value.h
const struct value *val);
extern void pack_long (gdb_byte *buf, struct type *type, LONGEST num);
-@@ -677,12 +679,12 @@ extern struct value *default_read_var_va
+@@ -683,12 +685,12 @@ extern struct value *default_read_var_va
extern struct value *allocate_value (struct type *type);
extern struct value *allocate_value_lazy (struct type *type);
@@ -4269,7 +4252,7 @@ Index: gdb-7.9.90.20150709/gdb/value.h
extern struct value *allocate_repeat_value (struct type *type, int count);
-@@ -760,16 +762,16 @@ extern int find_overload_match (struct v
+@@ -766,16 +768,16 @@ extern int find_overload_match (struct v
extern struct value *value_field (struct value *arg1, int fieldno);
@@ -4289,7 +4272,7 @@ Index: gdb-7.9.90.20150709/gdb/value.h
extern struct value *value_cast_pointers (struct type *, struct value *, int);
-@@ -864,7 +866,7 @@ extern void set_internalvar_string (stru
+@@ -870,7 +872,7 @@ extern void set_internalvar_string (stru
extern void clear_internalvar (struct internalvar *var);
extern void set_internalvar_component (struct internalvar *var,
@@ -4298,7 +4281,7 @@ Index: gdb-7.9.90.20150709/gdb/value.h
int bitpos, int bitsize,
struct value *newvalue);
-@@ -945,7 +947,7 @@ extern struct value *value_x_unop (struc
+@@ -951,7 +953,7 @@ extern struct value *value_x_unop (struc
enum noside noside);
extern struct value *value_fn_field (struct value **arg1p, struct fn_field *f,
@@ -4307,7 +4290,7 @@ Index: gdb-7.9.90.20150709/gdb/value.h
extern int binop_types_user_defined_p (enum exp_opcode op,
struct type *type1,
-@@ -973,7 +975,8 @@ extern void release_value_or_incref (str
+@@ -979,7 +981,8 @@ extern void release_value_or_incref (str
extern int record_latest_value (struct value *val);
extern void modify_field (struct type *type, gdb_byte *addr,
@@ -4317,7 +4300,7 @@ Index: gdb-7.9.90.20150709/gdb/value.h
extern void type_print (struct type *type, const char *varstring,
struct ui_file *stream, int show);
-@@ -1003,7 +1006,7 @@ extern void value_print_array_elements (
+@@ -1009,7 +1012,7 @@ extern void value_print_array_elements (
extern struct value *value_release_to_mark (struct value *mark);
extern void val_print (struct type *type, const gdb_byte *valaddr,
@@ -4326,7 +4309,7 @@ Index: gdb-7.9.90.20150709/gdb/value.h
struct ui_file *stream, int recurse,
const struct value *val,
const struct value_print_options *options,
-@@ -1056,10 +1059,11 @@ extern struct value *value_literal_compl
+@@ -1062,10 +1065,11 @@ extern struct value *value_literal_compl
extern struct value *find_function_in_inferior (const char *,
struct objfile **);
@@ -4340,10 +4323,10 @@ Index: gdb-7.9.90.20150709/gdb/value.h
/* User function handler. */
-Index: gdb-7.9.90.20150709/gdb/s390-linux-nat.c
+Index: gdb-7.10.50.20151027/gdb/s390-linux-nat.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/s390-linux-nat.c 2015-07-09 18:24:39.028356393 +0200
-+++ gdb-7.9.90.20150709/gdb/s390-linux-nat.c 2015-07-09 18:24:42.262383979 +0200
+--- gdb-7.10.50.20151027.orig/gdb/s390-linux-nat.c 2015-11-02 21:23:11.250351904 +0100
++++ gdb-7.10.50.20151027/gdb/s390-linux-nat.c 2015-11-02 21:23:13.242365010 +0100
@@ -612,7 +612,7 @@ s390_can_use_hw_breakpoint (struct targe
static int
@@ -4353,11 +4336,11 @@ Index: gdb-7.9.90.20150709/gdb/s390-linux-nat.c
{
return 1;
}
-Index: gdb-7.9.90.20150709/gdb/extension-priv.h
+Index: gdb-7.10.50.20151027/gdb/extension-priv.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/extension-priv.h 2015-07-09 18:24:39.028356393 +0200
-+++ gdb-7.9.90.20150709/gdb/extension-priv.h 2015-07-09 18:24:42.262383979 +0200
-@@ -180,7 +180,7 @@ struct extension_language_ops
+--- gdb-7.10.50.20151027.orig/gdb/extension-priv.h 2015-11-02 21:23:11.250351904 +0100
++++ gdb-7.10.50.20151027/gdb/extension-priv.h 2015-11-02 21:23:13.242365010 +0100
+@@ -181,7 +181,7 @@ struct extension_language_ops
enum ext_lang_rc (*apply_val_pretty_printer)
(const struct extension_language_defn *,
struct type *type, const gdb_byte *valaddr,
@@ -4366,10 +4349,10 @@ Index: gdb-7.9.90.20150709/gdb/extension-priv.h
struct ui_file *stream, int recurse,
const struct value *val, const struct value_print_options *options,
const struct language_defn *language);
-Index: gdb-7.9.90.20150709/gdb/python/python-internal.h
+Index: gdb-7.10.50.20151027/gdb/python/python-internal.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/python/python-internal.h 2015-07-09 18:24:39.028356393 +0200
-+++ gdb-7.9.90.20150709/gdb/python/python-internal.h 2015-07-09 18:24:42.263383988 +0200
+--- gdb-7.10.50.20151027.orig/gdb/python/python-internal.h 2015-11-02 21:23:11.250351904 +0100
++++ gdb-7.10.50.20151027/gdb/python/python-internal.h 2015-11-02 21:23:13.242365010 +0100
@@ -316,7 +316,7 @@ extern int gdbpy_auto_load_enabled (cons
extern enum ext_lang_rc gdbpy_apply_val_pretty_printer
(const struct extension_language_defn *,
@@ -4379,11 +4362,11 @@ Index: gdb-7.9.90.20150709/gdb/python/python-internal.h
struct ui_file *stream, int recurse,
const struct value *val,
const struct value_print_options *options,
-Index: gdb-7.9.90.20150709/gdb/target-delegates.c
+Index: gdb-7.10.50.20151027/gdb/target-delegates.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/target-delegates.c 2015-07-09 18:24:39.029356401 +0200
-+++ gdb-7.9.90.20150709/gdb/target-delegates.c 2015-07-09 18:24:42.264383996 +0200
-@@ -742,14 +742,14 @@ debug_watchpoint_addr_within_range (stru
+--- gdb-7.10.50.20151027.orig/gdb/target-delegates.c 2015-11-02 21:23:11.252351917 +0100
++++ gdb-7.10.50.20151027/gdb/target-delegates.c 2015-11-02 21:23:13.243365017 +0100
+@@ -736,14 +736,14 @@ debug_watchpoint_addr_within_range (stru
}
static int
@@ -4400,7 +4383,7 @@ Index: gdb-7.9.90.20150709/gdb/target-delegates.c
{
int result;
fprintf_unfiltered (gdb_stdlog, "-> %s->to_region_ok_for_hw_watchpoint (...)\n", debug_target.to_shortname);
-@@ -759,7 +759,7 @@ debug_region_ok_for_hw_watchpoint (struc
+@@ -753,7 +753,7 @@ debug_region_ok_for_hw_watchpoint (struc
fputs_unfiltered (", ", gdb_stdlog);
target_debug_print_CORE_ADDR (arg1);
fputs_unfiltered (", ", gdb_stdlog);
@@ -4409,23 +4392,23 @@ Index: gdb-7.9.90.20150709/gdb/target-delegates.c
fputs_unfiltered (") = ", gdb_stdlog);
target_debug_print_int (result);
fputs_unfiltered ("\n", gdb_stdlog);
-Index: gdb-7.9.90.20150709/gdb/aarch64-linux-nat.c
+Index: gdb-7.10.50.20151027/gdb/aarch64-linux-nat.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/aarch64-linux-nat.c 2015-07-09 18:24:39.030356410 +0200
-+++ gdb-7.9.90.20150709/gdb/aarch64-linux-nat.c 2015-07-09 18:24:42.264383996 +0200
-@@ -1386,7 +1386,7 @@ aarch64_linux_remove_watchpoint (struct
+--- gdb-7.10.50.20151027.orig/gdb/aarch64-linux-nat.c 2015-11-02 21:23:11.252351917 +0100
++++ gdb-7.10.50.20151027/gdb/aarch64-linux-nat.c 2015-11-02 21:23:13.243365017 +0100
+@@ -736,7 +736,7 @@ aarch64_linux_remove_watchpoint (struct
static int
aarch64_linux_region_ok_for_hw_watchpoint (struct target_ops *self,
- CORE_ADDR addr, int len)
+ CORE_ADDR addr, LONGEST len)
{
- CORE_ADDR aligned_addr;
-
-Index: gdb-7.9.90.20150709/gdb/nat/x86-dregs.c
+ return aarch64_linux_region_ok_for_watchpoint (addr, len);
+ }
+Index: gdb-7.10.50.20151027/gdb/nat/x86-dregs.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/nat/x86-dregs.c 2015-07-09 18:24:39.030356410 +0200
-+++ gdb-7.9.90.20150709/gdb/nat/x86-dregs.c 2015-07-09 18:24:42.264383996 +0200
+--- gdb-7.10.50.20151027.orig/gdb/nat/x86-dregs.c 2015-11-02 21:23:11.252351917 +0100
++++ gdb-7.10.50.20151027/gdb/nat/x86-dregs.c 2015-11-02 21:23:13.244365024 +0100
@@ -384,7 +384,7 @@ x86_remove_aligned_watchpoint (struct x8
static int
@@ -4444,10 +4427,10 @@ Index: gdb-7.9.90.20150709/gdb/nat/x86-dregs.c
{
int nregs;
-Index: gdb-7.9.90.20150709/gdb/compile/compile-c-support.c
+Index: gdb-7.10.50.20151027/gdb/compile/compile-c-support.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/compile/compile-c-support.c 2015-07-09 18:24:39.030356410 +0200
-+++ gdb-7.9.90.20150709/gdb/compile/compile-c-support.c 2015-07-09 18:24:42.265384005 +0200
+--- gdb-7.10.50.20151027.orig/gdb/compile/compile-c-support.c 2015-11-02 21:23:11.253351923 +0100
++++ gdb-7.10.50.20151027/gdb/compile/compile-c-support.c 2015-11-02 21:23:13.244365024 +0100
@@ -299,11 +299,11 @@ generate_register_struct (struct ui_file
default:
@@ -4462,10 +4445,10 @@ Index: gdb-7.9.90.20150709/gdb/compile/compile-c-support.c
}
fputs_unfiltered (";\n", stream);
-Index: gdb-7.9.90.20150709/gdb/nat/x86-dregs.h
+Index: gdb-7.10.50.20151027/gdb/nat/x86-dregs.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/nat/x86-dregs.h 2015-07-09 18:24:39.030356410 +0200
-+++ gdb-7.9.90.20150709/gdb/nat/x86-dregs.h 2015-07-09 18:24:42.265384005 +0200
+--- gdb-7.10.50.20151027.orig/gdb/nat/x86-dregs.h 2015-11-02 21:23:11.253351923 +0100
++++ gdb-7.10.50.20151027/gdb/nat/x86-dregs.h 2015-11-02 21:23:13.244365024 +0100
@@ -116,7 +116,7 @@ extern int x86_dr_remove_watchpoint (str
/* Return non-zero if we can watch a memory region that starts at
address ADDR and whose length is LEN bytes. */
@@ -4475,11 +4458,11 @@ Index: gdb-7.9.90.20150709/gdb/nat/x86-dregs.h
/* If the inferior has some break/watchpoint that triggered, set the
address associated with that break/watchpoint and return true.
-Index: gdb-7.9.90.20150709/gdb/x86-nat.c
+Index: gdb-7.10.50.20151027/gdb/x86-nat.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/x86-nat.c 2015-07-09 18:24:39.031356418 +0200
-+++ gdb-7.9.90.20150709/gdb/x86-nat.c 2015-07-09 18:24:42.265384005 +0200
-@@ -178,7 +178,7 @@ x86_remove_watchpoint (struct target_ops
+--- gdb-7.10.50.20151027.orig/gdb/x86-nat.c 2015-11-02 21:23:11.253351923 +0100
++++ gdb-7.10.50.20151027/gdb/x86-nat.c 2015-11-02 21:23:13.244365024 +0100
+@@ -174,7 +174,7 @@ x86_remove_watchpoint (struct target_ops
static int
x86_region_ok_for_watchpoint (struct target_ops *self,
@@ -4488,11 +4471,11 @@ Index: gdb-7.9.90.20150709/gdb/x86-nat.c
{
struct x86_debug_reg_state *state
= x86_debug_reg_state (ptid_get_pid (inferior_ptid));
-Index: gdb-7.9.90.20150709/gdb/guile/guile-internal.h
+Index: gdb-7.10.50.20151027/gdb/guile/guile-internal.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/guile/guile-internal.h 2015-07-09 18:24:39.031356418 +0200
-+++ gdb-7.9.90.20150709/gdb/guile/guile-internal.h 2015-07-09 18:24:42.265384005 +0200
-@@ -562,7 +562,7 @@ extern void gdbscm_preserve_values
+--- gdb-7.10.50.20151027.orig/gdb/guile/guile-internal.h 2015-11-02 21:23:11.253351923 +0100
++++ gdb-7.10.50.20151027/gdb/guile/guile-internal.h 2015-11-02 21:23:13.244365024 +0100
+@@ -606,7 +606,7 @@ extern void gdbscm_preserve_values
extern enum ext_lang_rc gdbscm_apply_val_pretty_printer
(const struct extension_language_defn *,
struct type *type, const gdb_byte *valaddr,
@@ -4501,10 +4484,10 @@ Index: gdb-7.9.90.20150709/gdb/guile/guile-internal.h
struct ui_file *stream, int recurse,
const struct value *val,
const struct value_print_options *options,
-Index: gdb-7.9.90.20150709/gdb/guile/scm-pretty-print.c
+Index: gdb-7.10.50.20151027/gdb/guile/scm-pretty-print.c
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/guile/scm-pretty-print.c 2015-07-09 18:24:39.031356418 +0200
-+++ gdb-7.9.90.20150709/gdb/guile/scm-pretty-print.c 2015-07-09 18:24:42.266384013 +0200
+--- gdb-7.10.50.20151027.orig/gdb/guile/scm-pretty-print.c 2015-11-02 21:23:11.254351930 +0100
++++ gdb-7.10.50.20151027/gdb/guile/scm-pretty-print.c 2015-11-02 21:23:13.245365030 +0100
@@ -958,7 +958,7 @@ ppscm_print_children (SCM printer, enum
enum ext_lang_rc
gdbscm_apply_val_pretty_printer (const struct extension_language_defn *extlang,
diff --git a/gdb-rhbz795424-bitpos-21of25.patch b/gdb-rhbz795424-bitpos-21of25.patch
index 9ca0010..71af3cf 100644
--- a/gdb-rhbz795424-bitpos-21of25.patch
+++ b/gdb-rhbz795424-bitpos-21of25.patch
@@ -52,11 +52,11 @@ Content-Type: text/x-patch
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename=bitpos-ensure-size_t.patch
-Index: gdb-7.7.90.20140613/gdb/alpha-tdep.c
+Index: gdb-7.10.50.20151022/gdb/alpha-tdep.c
===================================================================
---- gdb-7.7.90.20140613.orig/gdb/alpha-tdep.c 2014-06-13 22:14:49.725846383 +0200
-+++ gdb-7.7.90.20140613/gdb/alpha-tdep.c 2014-06-13 22:14:53.163850081 +0200
-@@ -414,6 +414,13 @@ alpha_push_dummy_call (struct gdbarch *g
+--- gdb-7.10.50.20151022.orig/gdb/alpha-tdep.c 2015-10-24 23:03:50.614898025 +0200
++++ gdb-7.10.50.20151022/gdb/alpha-tdep.c 2015-10-24 23:03:52.099907749 +0200
+@@ -413,6 +413,13 @@ alpha_push_dummy_call (struct gdbarch *g
accumulate_size = 0;
else
accumulate_size -= sizeof(arg_reg_buffer);
@@ -70,24 +70,24 @@ Index: gdb-7.7.90.20140613/gdb/alpha-tdep.c
sp -= accumulate_size;
/* Keep sp aligned to a multiple of 16 as the ABI requires. */
-Index: gdb-7.7.90.20140613/gdb/cp-valprint.c
+Index: gdb-7.10.50.20151022/gdb/cp-valprint.c
===================================================================
---- gdb-7.7.90.20140613.orig/gdb/cp-valprint.c 2014-06-13 22:14:49.725846383 +0200
-+++ gdb-7.7.90.20140613/gdb/cp-valprint.c 2014-06-13 22:14:53.164850081 +0200
-@@ -538,6 +538,8 @@ cp_print_value (struct type *type, struc
+--- gdb-7.10.50.20151022.orig/gdb/cp-valprint.c 2015-10-24 23:03:52.100907756 +0200
++++ gdb-7.10.50.20151022/gdb/cp-valprint.c 2015-10-24 23:06:20.496879433 +0200
+@@ -536,6 +536,8 @@ cp_print_value (struct type *type, struc
gdb_byte *buf;
struct cleanup *back_to;
+ ulongest_fits_host_or_error (TYPE_LENGTH (baseclass));
+
- buf = xmalloc (TYPE_LENGTH (baseclass));
+ buf = (gdb_byte *) xmalloc (TYPE_LENGTH (baseclass));
back_to = make_cleanup (xfree, buf);
-Index: gdb-7.7.90.20140613/gdb/dwarf2loc.c
+Index: gdb-7.10.50.20151022/gdb/dwarf2loc.c
===================================================================
---- gdb-7.7.90.20140613.orig/gdb/dwarf2loc.c 2014-06-13 22:14:49.726846384 +0200
-+++ gdb-7.7.90.20140613/gdb/dwarf2loc.c 2014-06-13 22:14:53.166850084 +0200
-@@ -1666,6 +1666,8 @@ read_pieced_value (struct value *v)
+--- gdb-7.10.50.20151022.orig/gdb/dwarf2loc.c 2015-10-24 23:03:50.616898039 +0200
++++ gdb-7.10.50.20151022/gdb/dwarf2loc.c 2015-10-24 23:03:52.101907762 +0200
+@@ -1744,6 +1744,8 @@ read_pieced_value (struct value *v)
this_size = (this_size_bits + source_offset_bits % 8 + 7) / 8;
source_offset = source_offset_bits / 8;
@@ -96,7 +96,7 @@ Index: gdb-7.7.90.20140613/gdb/dwarf2loc.c
if (buffer_size < this_size)
{
buffer_size = this_size;
-@@ -1857,6 +1859,7 @@ write_pieced_value (struct value *to, st
+@@ -1935,6 +1937,7 @@ write_pieced_value (struct value *to, st
}
else
{
@@ -104,35 +104,35 @@ Index: gdb-7.7.90.20140613/gdb/dwarf2loc.c
if (buffer_size < this_size)
{
buffer_size = this_size;
-Index: gdb-7.7.90.20140613/gdb/findcmd.c
+Index: gdb-7.10.50.20151022/gdb/findcmd.c
===================================================================
---- gdb-7.7.90.20140613.orig/gdb/findcmd.c 2014-06-13 22:14:49.726846384 +0200
-+++ gdb-7.7.90.20140613/gdb/findcmd.c 2014-06-13 22:14:53.166850084 +0200
-@@ -185,6 +185,7 @@ parse_find_args (char *args, ULONGEST *m
+--- gdb-7.10.50.20151022.orig/gdb/findcmd.c 2015-10-24 23:03:52.101907762 +0200
++++ gdb-7.10.50.20151022/gdb/findcmd.c 2015-10-24 23:06:57.208119813 +0200
+@@ -184,6 +184,7 @@ parse_find_args (char *args, ULONGEST *m
size_t current_offset = pattern_buf_end - pattern_buf;
pattern_buf_size = pattern_buf_size_need * 2;
+ ulongest_fits_host_or_error (pattern_buf_size);
- pattern_buf = xrealloc (pattern_buf, pattern_buf_size);
+ pattern_buf = (gdb_byte *) xrealloc (pattern_buf, pattern_buf_size);
pattern_buf_end = pattern_buf + current_offset;
}
-Index: gdb-7.7.90.20140613/gdb/p-valprint.c
+Index: gdb-7.10.50.20151022/gdb/p-valprint.c
===================================================================
---- gdb-7.7.90.20140613.orig/gdb/p-valprint.c 2014-06-13 22:14:49.728846387 +0200
-+++ gdb-7.7.90.20140613/gdb/p-valprint.c 2014-06-13 22:14:53.166850084 +0200
-@@ -772,6 +772,7 @@ pascal_object_print_value (struct type *
+--- gdb-7.10.50.20151022.orig/gdb/p-valprint.c 2015-10-24 23:03:52.101907762 +0200
++++ gdb-7.10.50.20151022/gdb/p-valprint.c 2015-10-24 23:07:18.457258950 +0200
+@@ -768,6 +768,7 @@ pascal_object_print_value (struct type *
gdb_byte *buf;
struct cleanup *back_to;
+ ulongest_fits_host_or_error (TYPE_LENGTH (baseclass));
- buf = xmalloc (TYPE_LENGTH (baseclass));
+ buf = (gdb_byte *) xmalloc (TYPE_LENGTH (baseclass));
back_to = make_cleanup (xfree, buf);
-Index: gdb-7.7.90.20140613/gdb/utils.c
+Index: gdb-7.10.50.20151022/gdb/utils.c
===================================================================
---- gdb-7.7.90.20140613.orig/gdb/utils.c 2014-06-13 22:14:53.166850084 +0200
-+++ gdb-7.7.90.20140613/gdb/utils.c 2014-06-13 22:15:16.839875341 +0200
-@@ -2838,6 +2838,18 @@ string_to_core_addr (const char *my_stri
+--- gdb-7.10.50.20151022.orig/gdb/utils.c 2015-10-24 23:03:50.617898045 +0200
++++ gdb-7.10.50.20151022/gdb/utils.c 2015-10-24 23:03:52.102907769 +0200
+@@ -2835,6 +2835,18 @@ string_to_core_addr (const char *my_stri
return addr;
}
@@ -151,31 +151,31 @@ Index: gdb-7.7.90.20140613/gdb/utils.c
char *
gdb_realpath (const char *filename)
{
-Index: gdb-7.7.90.20140613/gdb/valops.c
+Index: gdb-7.10.50.20151022/gdb/valops.c
===================================================================
---- gdb-7.7.90.20140613.orig/gdb/valops.c 2014-06-13 22:14:49.730846389 +0200
-+++ gdb-7.7.90.20140613/gdb/valops.c 2014-06-13 22:14:53.169850088 +0200
-@@ -2074,6 +2074,7 @@ search_struct_method (const char *name,
+--- gdb-7.10.50.20151022.orig/gdb/valops.c 2015-10-24 23:03:52.103907775 +0200
++++ gdb-7.10.50.20151022/gdb/valops.c 2015-10-24 23:08:27.056709599 +0200
+@@ -2057,6 +2057,7 @@ search_struct_method (const char *name,
struct cleanup *back_to;
CORE_ADDR address;
+ ulongest_fits_host_or_error (TYPE_LENGTH (baseclass));
- tmp = xmalloc (TYPE_LENGTH (baseclass));
+ tmp = (gdb_byte *) xmalloc (TYPE_LENGTH (baseclass));
back_to = make_cleanup (xfree, tmp);
address = value_address (*arg1p);
-Index: gdb-7.7.90.20140613/gdb/value.c
+Index: gdb-7.10.50.20151022/gdb/value.c
===================================================================
---- gdb-7.7.90.20140613.orig/gdb/value.c 2014-06-13 22:14:49.732846391 +0200
-+++ gdb-7.7.90.20140613/gdb/value.c 2014-06-13 22:14:53.169850088 +0200
-@@ -824,6 +824,7 @@ allocate_value_lazy (struct type *type)
+--- gdb-7.10.50.20151022.orig/gdb/value.c 2015-10-24 23:03:50.619898058 +0200
++++ gdb-7.10.50.20151022/gdb/value.c 2015-10-24 23:08:00.049531291 +0200
+@@ -934,6 +934,7 @@ allocate_value_lazy (struct type *type)
description correctly. */
check_typedef (type);
+ ulongest_fits_host_or_error (TYPE_LENGTH (type));
- val = (struct value *) xzalloc (sizeof (struct value));
+ val = XCNEW (struct value);
val->contents = NULL;
val->next = all_values;
-@@ -855,6 +856,8 @@ allocate_value_lazy (struct type *type)
+@@ -964,6 +965,8 @@ allocate_value_lazy (struct type *type)
static void
allocate_value_contents (struct value *val)
{
@@ -184,7 +184,7 @@ Index: gdb-7.7.90.20140613/gdb/value.c
if (!val->contents)
val->contents = (gdb_byte *) xzalloc (TYPE_LENGTH (val->enclosing_type));
}
-@@ -2831,8 +2834,12 @@ void
+@@ -2995,8 +2998,12 @@ void
set_value_enclosing_type (struct value *val, struct type *new_encl_type)
{
if (TYPE_LENGTH (new_encl_type) > TYPE_LENGTH (value_enclosing_type (val)))
@@ -199,11 +199,11 @@ Index: gdb-7.7.90.20140613/gdb/value.c
val->enclosing_type = new_encl_type;
}
-Index: gdb-7.7.90.20140613/gdb/vax-tdep.c
+Index: gdb-7.10.50.20151022/gdb/vax-tdep.c
===================================================================
---- gdb-7.7.90.20140613.orig/gdb/vax-tdep.c 2014-06-13 22:14:49.732846391 +0200
-+++ gdb-7.7.90.20140613/gdb/vax-tdep.c 2014-06-13 22:14:53.169850088 +0200
-@@ -223,6 +223,7 @@ vax_return_value (struct gdbarch *gdbarc
+--- gdb-7.10.50.20151022.orig/gdb/vax-tdep.c 2015-10-24 23:03:50.619898058 +0200
++++ gdb-7.10.50.20151022/gdb/vax-tdep.c 2015-10-24 23:03:52.105907788 +0200
+@@ -219,6 +219,7 @@ vax_return_value (struct gdbarch *gdbarc
ULONGEST addr;
regcache_raw_read_unsigned (regcache, VAX_R0_REGNUM, &addr);
@@ -211,11 +211,11 @@ Index: gdb-7.7.90.20140613/gdb/vax-tdep.c
read_memory (addr, readbuf, len);
}
-Index: gdb-7.7.90.20140613/gdb/defs.h
+Index: gdb-7.10.50.20151022/gdb/defs.h
===================================================================
---- gdb-7.7.90.20140613.orig/gdb/defs.h 2014-06-13 22:14:49.732846391 +0200
-+++ gdb-7.7.90.20140613/gdb/defs.h 2014-06-13 22:14:53.169850088 +0200
-@@ -756,4 +756,6 @@ enum block_enum
+--- gdb-7.10.50.20151022.orig/gdb/defs.h 2015-10-24 23:03:50.619898058 +0200
++++ gdb-7.10.50.20151022/gdb/defs.h 2015-10-24 23:03:52.105907788 +0200
+@@ -690,4 +690,6 @@ enum block_enum
#include "utils.h"
diff --git a/gdb-rhbz795424-bitpos-22of25.patch b/gdb-rhbz795424-bitpos-22of25.patch
index ecca068..e7c0a8c 100644
--- a/gdb-rhbz795424-bitpos-22of25.patch
+++ b/gdb-rhbz795424-bitpos-22of25.patch
@@ -96,11 +96,11 @@ Content-Type: text/x-patch
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename=bitpos-wp.patch
-Index: gdb-7.8.50.20141228/gdb/arm-linux-nat.c
+Index: gdb-7.10.50.20151022/gdb/arm-linux-nat.c
===================================================================
---- gdb-7.8.50.20141228.orig/gdb/arm-linux-nat.c 2015-01-05 22:10:30.170726774 +0100
-+++ gdb-7.8.50.20141228/gdb/arm-linux-nat.c 2015-01-05 22:10:35.571751324 +0100
-@@ -1295,7 +1295,7 @@ arm_linux_stopped_by_watchpoint (struct
+--- gdb-7.10.50.20151022.orig/gdb/arm-linux-nat.c 2015-10-24 23:13:24.617686121 +0200
++++ gdb-7.10.50.20151022/gdb/arm-linux-nat.c 2015-10-24 23:13:32.051735501 +0200
+@@ -1209,7 +1209,7 @@ arm_linux_stopped_by_watchpoint (struct
static int
arm_linux_watchpoint_addr_within_range (struct target_ops *target,
CORE_ADDR addr,
@@ -109,11 +109,11 @@ Index: gdb-7.8.50.20141228/gdb/arm-linux-nat.c
{
return start <= addr && start + length - 1 >= addr;
}
-Index: gdb-7.8.50.20141228/gdb/ppc-linux-nat.c
+Index: gdb-7.10.50.20151022/gdb/ppc-linux-nat.c
===================================================================
---- gdb-7.8.50.20141228.orig/gdb/ppc-linux-nat.c 2015-01-05 22:10:30.171726779 +0100
-+++ gdb-7.8.50.20141228/gdb/ppc-linux-nat.c 2015-01-05 22:10:35.572751329 +0100
-@@ -1860,11 +1860,11 @@ can_use_watchpoint_cond_accel (void)
+--- gdb-7.10.50.20151022.orig/gdb/ppc-linux-nat.c 2015-10-24 23:13:24.617686121 +0200
++++ gdb-7.10.50.20151022/gdb/ppc-linux-nat.c 2015-10-24 23:13:32.051735501 +0200
+@@ -1807,11 +1807,11 @@ can_use_watchpoint_cond_accel (void)
CONDITION_VALUE will hold the value which should be put in the
DVC register. */
static void
@@ -128,7 +128,7 @@ Index: gdb-7.8.50.20141228/gdb/ppc-linux-nat.c
CORE_ADDR addr_end_data, addr_end_dvc;
/* The DVC register compares bytes within fixed-length windows which
-@@ -1951,7 +1951,7 @@ num_memory_accesses (struct value *v)
+@@ -1898,7 +1898,7 @@ num_memory_accesses (struct value *v)
of the constant. */
static int
check_condition (CORE_ADDR watch_addr, struct expression *cond,
@@ -137,7 +137,7 @@ Index: gdb-7.8.50.20141228/gdb/ppc-linux-nat.c
{
int pc = 1, num_accesses_left, num_accesses_right;
struct value *left_val, *right_val, *left_chain, *right_chain;
-@@ -2019,7 +2019,7 @@ check_condition (CORE_ADDR watch_addr, s
+@@ -1966,7 +1966,7 @@ check_condition (CORE_ADDR watch_addr, s
true. */
static int
ppc_linux_can_accel_watchpoint_condition (struct target_ops *self,
@@ -146,16 +146,16 @@ Index: gdb-7.8.50.20141228/gdb/ppc-linux-nat.c
struct expression *cond)
{
CORE_ADDR data_value;
-@@ -2036,7 +2036,7 @@ ppc_linux_can_accel_watchpoint_condition
+@@ -1983,7 +1983,7 @@ ppc_linux_can_accel_watchpoint_condition
static void
create_watchpoint_request (struct ppc_hw_breakpoint *p, CORE_ADDR addr,
-- int len, int rw, struct expression *cond,
-+ LONGEST len, int rw, struct expression *cond,
- int insert)
+- int len, enum target_hw_bp_type type,
++ LONGEST len, enum target_hw_bp_type type,
+ struct expression *cond, int insert)
{
if (len == 1
-@@ -2302,7 +2302,7 @@ ppc_linux_stopped_by_watchpoint (struct
+@@ -2249,7 +2249,7 @@ ppc_linux_stopped_by_watchpoint (struct
static int
ppc_linux_watchpoint_addr_within_range (struct target_ops *target,
CORE_ADDR addr,
@@ -164,11 +164,11 @@ Index: gdb-7.8.50.20141228/gdb/ppc-linux-nat.c
{
int mask;
-Index: gdb-7.8.50.20141228/gdb/procfs.c
+Index: gdb-7.10.50.20151022/gdb/procfs.c
===================================================================
---- gdb-7.8.50.20141228.orig/gdb/procfs.c 2015-01-05 22:10:30.172726783 +0100
-+++ gdb-7.8.50.20141228/gdb/procfs.c 2015-01-05 22:10:35.573751333 +0100
-@@ -2426,7 +2426,7 @@ procfs_address_to_host_pointer (CORE_ADD
+--- gdb-7.10.50.20151022.orig/gdb/procfs.c 2015-10-24 23:13:24.617686121 +0200
++++ gdb-7.10.50.20151022/gdb/procfs.c 2015-10-24 23:13:32.052735507 +0200
+@@ -2427,7 +2427,7 @@ procfs_address_to_host_pointer (CORE_ADD
#endif
static int
@@ -177,7 +177,7 @@ Index: gdb-7.8.50.20141228/gdb/procfs.c
{
#if !defined (PCWATCH) && !defined (PIOCSWATCH)
/* If neither or these is defined, we can't support watchpoints.
-@@ -4705,7 +4705,7 @@ procfs_pid_to_str (struct target_ops *op
+@@ -4706,7 +4706,7 @@ procfs_pid_to_str (struct target_ops *op
/* Insert a watchpoint. */
static int
@@ -186,11 +186,11 @@ Index: gdb-7.8.50.20141228/gdb/procfs.c
int after)
{
#ifndef AIX5
-Index: gdb-7.8.50.20141228/gdb/remote.c
+Index: gdb-7.10.50.20151022/gdb/remote.c
===================================================================
---- gdb-7.8.50.20141228.orig/gdb/remote.c 2015-01-05 22:10:30.174726792 +0100
-+++ gdb-7.8.50.20141228/gdb/remote.c 2015-01-05 22:10:35.574751338 +0100
-@@ -8298,7 +8298,7 @@ remote_insert_watchpoint (struct target_
+--- gdb-7.10.50.20151022.orig/gdb/remote.c 2015-10-24 23:13:24.617686121 +0200
++++ gdb-7.10.50.20151022/gdb/remote.c 2015-10-24 23:13:32.054735521 +0200
+@@ -9085,7 +9085,7 @@ remote_insert_watchpoint (struct target_
p = strchr (rs->buf, '\0');
addr = remote_address_masked (addr);
p += hexnumstr (p, (ULONGEST) addr);
@@ -199,7 +199,7 @@ Index: gdb-7.8.50.20141228/gdb/remote.c
putpkt (rs->buf);
getpkt (&rs->buf, &rs->buf_size, 0);
-@@ -8318,7 +8318,7 @@ remote_insert_watchpoint (struct target_
+@@ -9105,7 +9105,7 @@ remote_insert_watchpoint (struct target_
static int
remote_watchpoint_addr_within_range (struct target_ops *target, CORE_ADDR addr,
@@ -208,7 +208,7 @@ Index: gdb-7.8.50.20141228/gdb/remote.c
{
CORE_ADDR diff = remote_address_masked (addr - start);
-@@ -8348,7 +8348,7 @@ remote_remove_watchpoint (struct target_
+@@ -9134,7 +9134,7 @@ remote_remove_watchpoint (struct target_
p = strchr (rs->buf, '\0');
addr = remote_address_masked (addr);
p += hexnumstr (p, (ULONGEST) addr);
@@ -217,10 +217,10 @@ Index: gdb-7.8.50.20141228/gdb/remote.c
putpkt (rs->buf);
getpkt (&rs->buf, &rs->buf_size, 0);
-Index: gdb-7.8.50.20141228/gdb/target.c
+Index: gdb-7.10.50.20151022/gdb/target.c
===================================================================
---- gdb-7.8.50.20141228.orig/gdb/target.c 2015-01-05 22:10:30.175726797 +0100
-+++ gdb-7.8.50.20141228/gdb/target.c 2015-01-05 22:10:35.575751342 +0100
+--- gdb-7.10.50.20151022.orig/gdb/target.c 2015-10-24 23:13:24.617686121 +0200
++++ gdb-7.10.50.20151022/gdb/target.c 2015-10-24 23:13:32.054735521 +0200
@@ -51,7 +51,7 @@ static void generic_tls_error (void) ATT
static void default_terminal_info (struct target_ops *, const char *, int);
@@ -230,7 +230,7 @@ Index: gdb-7.8.50.20141228/gdb/target.c
static int default_region_ok_for_hw_watchpoint (struct target_ops *,
CORE_ADDR, LONGEST);
-@@ -2983,7 +2983,7 @@ default_region_ok_for_hw_watchpoint (str
+@@ -3140,7 +3140,7 @@ default_region_ok_for_hw_watchpoint (str
static int
default_watchpoint_addr_within_range (struct target_ops *target,
CORE_ADDR addr,
@@ -239,11 +239,11 @@ Index: gdb-7.8.50.20141228/gdb/target.c
{
return addr >= start && addr < start + length;
}
-Index: gdb-7.8.50.20141228/gdb/target.h
+Index: gdb-7.10.50.20151022/gdb/target.h
===================================================================
---- gdb-7.8.50.20141228.orig/gdb/target.h 2015-01-05 22:10:30.176726802 +0100
-+++ gdb-7.8.50.20141228/gdb/target.h 2015-01-05 22:10:35.575751342 +0100
-@@ -483,7 +483,7 @@ struct target_ops
+--- gdb-7.10.50.20151022.orig/gdb/target.h 2015-10-24 23:13:24.617686121 +0200
++++ gdb-7.10.50.20151022/gdb/target.h 2015-10-24 23:13:32.055735527 +0200
+@@ -543,7 +543,7 @@ struct target_ops
int (*to_stopped_data_address) (struct target_ops *, CORE_ADDR *)
TARGET_DEFAULT_RETURN (0);
int (*to_watchpoint_addr_within_range) (struct target_ops *,
@@ -252,7 +252,7 @@ Index: gdb-7.8.50.20141228/gdb/target.h
TARGET_DEFAULT_FUNC (default_watchpoint_addr_within_range);
/* Documentation of this routine is provided with the corresponding
-@@ -493,7 +493,7 @@ struct target_ops
+@@ -553,7 +553,7 @@ struct target_ops
TARGET_DEFAULT_FUNC (default_region_ok_for_hw_watchpoint);
int (*to_can_accel_watchpoint_condition) (struct target_ops *,
@@ -261,80 +261,11 @@ Index: gdb-7.8.50.20141228/gdb/target.h
struct expression *)
TARGET_DEFAULT_RETURN (0);
int (*to_masked_watch_num_registers) (struct target_ops *,
-Index: gdb-7.8.50.20141228/gdb/aarch64-linux-nat.c
+Index: gdb-7.10.50.20151022/gdb/aarch64-linux-nat.c
===================================================================
---- gdb-7.8.50.20141228.orig/gdb/aarch64-linux-nat.c 2015-01-05 22:10:30.176726802 +0100
-+++ gdb-7.8.50.20141228/gdb/aarch64-linux-nat.c 2015-01-05 22:10:35.575751342 +0100
-@@ -424,14 +424,14 @@ aarch64_notify_debug_reg_change (const s
- static void
- aarch64_show_debug_reg_state (struct aarch64_debug_reg_state *state,
- const char *func, CORE_ADDR addr,
-- int len, int type)
-+ LONGEST len, int type)
- {
- int i;
-
- fprintf_unfiltered (gdb_stdlog, "%s", func);
- if (addr || len)
-- fprintf_unfiltered (gdb_stdlog, " (addr=0x%08lx, len=%d, type=%s)",
-- (unsigned long) addr, len,
-+ fprintf_unfiltered (gdb_stdlog, " (addr=0x%08lx, len=%s, type=%s)",
-+ (unsigned long) addr, plongest (len),
- type == hw_write ? "hw-write-watchpoint"
- : (type == hw_read ? "hw-read-watchpoint"
- : (type == hw_access ? "hw-access-watchpoint"
-@@ -851,9 +851,10 @@ aarch64_linux_read_description (struct t
- gdbserver/linux-aarch64-low.c for more information. */
-
- static void
--aarch64_align_watchpoint (CORE_ADDR addr, int len, CORE_ADDR *aligned_addr_p,
-+aarch64_align_watchpoint (CORE_ADDR addr, LONGEST len,
-+ CORE_ADDR *aligned_addr_p,
- int *aligned_len_p, CORE_ADDR *next_addr_p,
-- int *next_len_p)
-+ LONGEST *next_len_p)
- {
- int aligned_len;
- unsigned int offset;
-@@ -1020,7 +1021,7 @@ aarch64_point_encode_ctrl_reg (int type,
- Return 0 for any non-compliant ADDR and/or LEN; return 1 otherwise. */
-
- static int
--aarch64_point_is_aligned (int is_watchpoint, CORE_ADDR addr, int len)
-+aarch64_point_is_aligned (int is_watchpoint, CORE_ADDR addr, LONGEST len)
- {
- unsigned int alignment = is_watchpoint ? AARCH64_HWP_ALIGNMENT
- : AARCH64_HBP_ALIGNMENT;
-@@ -1272,7 +1273,7 @@ aarch64_handle_aligned_watchpoint (int t
- Return 0 if succeed. */
-
- static int
--aarch64_handle_unaligned_watchpoint (int type, CORE_ADDR addr, int len,
-+aarch64_handle_unaligned_watchpoint (int type, CORE_ADDR addr, LONGEST len,
- int is_insert)
- {
- struct aarch64_debug_reg_state *state
-@@ -1297,8 +1298,8 @@ aarch64_handle_unaligned_watchpoint (int
- fprintf_unfiltered (gdb_stdlog,
- "handle_unaligned_watchpoint: is_insert: %d\n"
- " aligned_addr: 0x%08lx, aligned_len: %d\n"
--" next_addr: 0x%08lx, next_len: %d\n",
-- is_insert, aligned_addr, aligned_len, addr, len);
-+" next_addr: 0x%08lx, next_len: %s\n",
-+ is_insert, aligned_addr, aligned_len, addr, plongest (len));
-
- if (ret != 0)
- return ret;
-@@ -1310,7 +1311,7 @@ aarch64_handle_unaligned_watchpoint (int
- /* Implements insertion and removal of a single watchpoint. */
-
- static int
--aarch64_handle_watchpoint (int type, CORE_ADDR addr, int len, int is_insert)
-+aarch64_handle_watchpoint (int type, CORE_ADDR addr, LONGEST len, int is_insert)
- {
- if (aarch64_point_is_aligned (1 /* is_watchpoint */ , addr, len))
- return aarch64_handle_aligned_watchpoint (type, addr, len, is_insert);
-@@ -1479,7 +1480,7 @@ aarch64_linux_stopped_by_watchpoint (str
+--- gdb-7.10.50.20151022.orig/gdb/aarch64-linux-nat.c 2015-10-24 23:13:24.617686121 +0200
++++ gdb-7.10.50.20151022/gdb/aarch64-linux-nat.c 2015-10-24 23:13:32.055735527 +0200
+@@ -795,7 +795,7 @@ aarch64_linux_stopped_by_watchpoint (str
static int
aarch64_linux_watchpoint_addr_within_range (struct target_ops *target,
CORE_ADDR addr,
@@ -343,11 +274,11 @@ Index: gdb-7.8.50.20141228/gdb/aarch64-linux-nat.c
{
return start <= addr && start + length - 1 >= addr;
}
-Index: gdb-7.8.50.20141228/gdb/target-delegates.c
+Index: gdb-7.10.50.20151022/gdb/target-delegates.c
===================================================================
---- gdb-7.8.50.20141228.orig/gdb/target-delegates.c 2015-01-05 22:10:30.177726806 +0100
-+++ gdb-7.8.50.20141228/gdb/target-delegates.c 2015-01-05 22:12:11.071185408 +0100
-@@ -607,14 +607,14 @@ debug_stopped_data_address (struct targe
+--- gdb-7.10.50.20151022.orig/gdb/target-delegates.c 2015-10-24 23:13:24.617686121 +0200
++++ gdb-7.10.50.20151022/gdb/target-delegates.c 2015-10-24 23:13:32.055735527 +0200
+@@ -709,14 +709,14 @@ debug_stopped_data_address (struct targe
}
static int
@@ -364,7 +295,7 @@ Index: gdb-7.8.50.20141228/gdb/target-delegates.c
{
int result;
fprintf_unfiltered (gdb_stdlog, "-> %s->to_watchpoint_addr_within_range (...)\n", debug_target.to_shortname);
-@@ -626,7 +626,7 @@ debug_watchpoint_addr_within_range (stru
+@@ -728,7 +728,7 @@ debug_watchpoint_addr_within_range (stru
fputs_unfiltered (", ", gdb_stdlog);
target_debug_print_CORE_ADDR (arg2);
fputs_unfiltered (", ", gdb_stdlog);
@@ -373,7 +304,7 @@ Index: gdb-7.8.50.20141228/gdb/target-delegates.c
fputs_unfiltered (") = ", gdb_stdlog);
target_debug_print_int (result);
fputs_unfiltered ("\n", gdb_stdlog);
-@@ -659,20 +659,20 @@ debug_region_ok_for_hw_watchpoint (struc
+@@ -761,20 +761,20 @@ debug_region_ok_for_hw_watchpoint (struc
}
static int
@@ -397,7 +328,7 @@ Index: gdb-7.8.50.20141228/gdb/target-delegates.c
{
int result;
fprintf_unfiltered (gdb_stdlog, "-> %s->to_can_accel_watchpoint_condition (...)\n", debug_target.to_shortname);
-@@ -682,7 +682,7 @@ debug_can_accel_watchpoint_condition (st
+@@ -784,7 +784,7 @@ debug_can_accel_watchpoint_condition (st
fputs_unfiltered (", ", gdb_stdlog);
target_debug_print_CORE_ADDR (arg1);
fputs_unfiltered (", ", gdb_stdlog);
@@ -406,3 +337,77 @@ Index: gdb-7.8.50.20141228/gdb/target-delegates.c
fputs_unfiltered (", ", gdb_stdlog);
target_debug_print_int (arg3);
fputs_unfiltered (", ", gdb_stdlog);
+Index: gdb-7.10.50.20151022/gdb/nat/aarch64-linux-hw-point.c
+===================================================================
+--- gdb-7.10.50.20151022.orig/gdb/nat/aarch64-linux-hw-point.c 2015-10-22 03:48:33.000000000 +0200
++++ gdb-7.10.50.20151022/gdb/nat/aarch64-linux-hw-point.c 2015-10-24 23:12:29.927322845 +0200
+@@ -111,7 +111,7 @@ aarch64_point_encode_ctrl_reg (enum targ
+ Return 0 for any non-compliant ADDR and/or LEN; return 1 otherwise. */
+
+ static int
+-aarch64_point_is_aligned (int is_watchpoint, CORE_ADDR addr, int len)
++aarch64_point_is_aligned (int is_watchpoint, CORE_ADDR addr, LONGEST len)
+ {
+ unsigned int alignment = 0;
+
+@@ -180,9 +180,10 @@ aarch64_point_is_aligned (int is_watchpo
+ limitations can be largely relaxed with some further work. */
+
+ static void
+-aarch64_align_watchpoint (CORE_ADDR addr, int len, CORE_ADDR *aligned_addr_p,
++aarch64_align_watchpoint (CORE_ADDR addr, LONGEST len,
++ CORE_ADDR *aligned_addr_p,
+ int *aligned_len_p, CORE_ADDR *next_addr_p,
+- int *next_len_p)
++ LONGEST *next_len_p)
+ {
+ int aligned_len;
+ unsigned int offset;
+@@ -494,7 +495,7 @@ aarch64_handle_aligned_watchpoint (enum
+
+ static int
+ aarch64_handle_unaligned_watchpoint (enum target_hw_bp_type type,
+- CORE_ADDR addr, int len, int is_insert,
++ CORE_ADDR addr, LONGEST len, int is_insert,
+ struct aarch64_debug_reg_state *state)
+ {
+ while (len > 0)
+@@ -517,9 +518,9 @@ aarch64_handle_unaligned_watchpoint (enu
+ " "
+ "aligned_addr: %s, aligned_len: %d\n"
+ " "
+- "next_addr: %s, next_len: %d\n",
++ "next_addr: %s, next_len: %s\n",
+ is_insert, core_addr_to_string_nz (aligned_addr),
+- aligned_len, core_addr_to_string_nz (addr), len);
++ aligned_len, core_addr_to_string_nz (addr), plongest (len));
+
+ if (ret != 0)
+ return ret;
+@@ -530,7 +531,7 @@ aarch64_handle_unaligned_watchpoint (enu
+
+ int
+ aarch64_handle_watchpoint (enum target_hw_bp_type type, CORE_ADDR addr,
+- int len, int is_insert,
++ LONGEST len, int is_insert,
+ struct aarch64_debug_reg_state *state)
+ {
+ if (aarch64_point_is_aligned (1 /* is_watchpoint */ , addr, len))
+@@ -581,14 +582,14 @@ aarch64_linux_set_debug_regs (const stru
+ void
+ aarch64_show_debug_reg_state (struct aarch64_debug_reg_state *state,
+ const char *func, CORE_ADDR addr,
+- int len, enum target_hw_bp_type type)
++ LONGEST len, enum target_hw_bp_type type)
+ {
+ int i;
+
+ debug_printf ("%s", func);
+ if (addr || len)
+- debug_printf (" (addr=0x%08lx, len=%d, type=%s)",
+- (unsigned long) addr, len,
++ debug_printf (" (addr=0x%08lx, len=%s, type=%s)",
++ (unsigned long) addr, plongest (len),
+ type == hw_write ? "hw-write-watchpoint"
+ : (type == hw_read ? "hw-read-watchpoint"
+ : (type == hw_access ? "hw-access-watchpoint"
diff --git a/gdb-rhbz795424-bitpos-23of25.patch b/gdb-rhbz795424-bitpos-23of25.patch
index 862f3aa..c9d3ef8 100644
--- a/gdb-rhbz795424-bitpos-23of25.patch
+++ b/gdb-rhbz795424-bitpos-23of25.patch
@@ -137,11 +137,11 @@ Content-Type: text/x-patch
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename=bitpos-tdep.patch
-Index: gdb-7.9.50.20150520/gdb/alpha-tdep.c
+Index: gdb-7.10.50.20151022/gdb/alpha-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/alpha-tdep.c 2015-05-31 17:15:01.056868035 +0200
-+++ gdb-7.9.50.20150520/gdb/alpha-tdep.c 2015-05-31 17:15:03.419882846 +0200
-@@ -298,18 +298,18 @@ alpha_push_dummy_call (struct gdbarch *g
+--- gdb-7.10.50.20151022.orig/gdb/alpha-tdep.c 2015-10-24 23:14:17.792039327 +0200
++++ gdb-7.10.50.20151022/gdb/alpha-tdep.c 2015-10-24 23:15:07.615370274 +0200
+@@ -299,17 +299,17 @@ alpha_push_dummy_call (struct gdbarch *g
{
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
int i;
@@ -155,8 +155,7 @@ Index: gdb-7.9.50.20150520/gdb/alpha-tdep.c
+ ssize_t len;
+ ssize_t offset;
};
- struct alpha_arg *alpha_args
- = (struct alpha_arg *) alloca (nargs * sizeof (struct alpha_arg));
+ struct alpha_arg *alpha_args = XALLOCAVEC (struct alpha_arg, nargs);
struct alpha_arg *m_arg;
gdb_byte arg_reg_buffer[ALPHA_REGISTER_SIZE * ALPHA_NUM_ARG_REGS];
- int required_arg_regs;
@@ -184,10 +183,10 @@ Index: gdb-7.9.50.20150520/gdb/alpha-tdep.c
memcpy (arg_reg_buffer + offset, contents, tlen);
offset += tlen;
contents += tlen;
-Index: gdb-7.9.50.20150520/gdb/amd64-tdep.c
+Index: gdb-7.10.50.20151022/gdb/amd64-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/amd64-tdep.c 2015-05-31 17:15:01.058868047 +0200
-+++ gdb-7.9.50.20150520/gdb/amd64-tdep.c 2015-05-31 17:15:40.253113722 +0200
+--- gdb-7.10.50.20151022.orig/gdb/amd64-tdep.c 2015-10-24 23:14:17.793039333 +0200
++++ gdb-7.10.50.20151022/gdb/amd64-tdep.c 2015-10-24 23:14:20.935060204 +0200
@@ -701,7 +701,7 @@ amd64_return_value (struct gdbarch *gdba
gdb_byte *readbuf, const gdb_byte *writebuf)
{
@@ -199,7 +198,7 @@ Index: gdb-7.9.50.20150520/gdb/amd64-tdep.c
int integer_reg = 0;
@@ -852,8 +852,8 @@ amd64_push_arguments (struct regcache *r
};
- struct value **stack_args = alloca (nargs * sizeof (struct value *));
+ struct value **stack_args = XALLOCAVEC (struct value *, nargs);
int num_stack_args = 0;
- int num_elements = 0;
- int element = 0;
@@ -217,10 +216,10 @@ Index: gdb-7.9.50.20150520/gdb/amd64-tdep.c
enum amd64_reg_class theclass[2];
int needed_integer_regs = 0;
int needed_sse_regs = 0;
-Index: gdb-7.9.50.20150520/gdb/amd64-windows-tdep.c
+Index: gdb-7.10.50.20151022/gdb/amd64-windows-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/amd64-windows-tdep.c 2015-05-31 17:15:01.059868054 +0200
-+++ gdb-7.9.50.20150520/gdb/amd64-windows-tdep.c 2015-05-31 17:15:03.421882859 +0200
+--- gdb-7.10.50.20151022.orig/gdb/amd64-windows-tdep.c 2015-10-24 23:14:17.794039340 +0200
++++ gdb-7.10.50.20151022/gdb/amd64-windows-tdep.c 2015-10-24 23:14:20.935060204 +0200
@@ -288,7 +288,7 @@ amd64_windows_return_value (struct gdbar
struct type *type, struct regcache *regcache,
gdb_byte *readbuf, const gdb_byte *writebuf)
@@ -230,11 +229,11 @@ Index: gdb-7.9.50.20150520/gdb/amd64-windows-tdep.c
int regnum = -1;
/* See if our value is returned through a register. If it is, then
-Index: gdb-7.9.50.20150520/gdb/arm-tdep.c
+Index: gdb-7.10.50.20151022/gdb/arm-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/arm-tdep.c 2015-05-31 17:15:01.069868116 +0200
-+++ gdb-7.9.50.20150520/gdb/arm-tdep.c 2015-05-31 17:15:03.425882884 +0200
-@@ -3537,7 +3537,7 @@ arm_vfp_cprc_reg_char (enum arm_vfp_cprc
+--- gdb-7.10.50.20151022.orig/gdb/arm-tdep.c 2015-10-24 23:14:17.800039380 +0200
++++ gdb-7.10.50.20151022/gdb/arm-tdep.c 2015-10-24 23:14:20.937060217 +0200
+@@ -3531,7 +3531,7 @@ arm_vfp_cprc_reg_char (enum arm_vfp_cprc
array). Vector types are not currently supported, matching the
generic AAPCS support. */
@@ -243,7 +242,7 @@ Index: gdb-7.9.50.20150520/gdb/arm-tdep.c
arm_vfp_cprc_sub_candidate (struct type *t,
enum arm_vfp_cprc_base_type *base_type)
{
-@@ -3600,7 +3600,7 @@ arm_vfp_cprc_sub_candidate (struct type
+@@ -3594,7 +3594,7 @@ arm_vfp_cprc_sub_candidate (struct type
case TYPE_CODE_ARRAY:
{
@@ -252,7 +251,7 @@ Index: gdb-7.9.50.20150520/gdb/arm-tdep.c
unsigned unitlen;
count = arm_vfp_cprc_sub_candidate (TYPE_TARGET_TYPE (t), base_type);
if (count == -1)
-@@ -3620,13 +3620,15 @@ arm_vfp_cprc_sub_candidate (struct type
+@@ -3614,13 +3614,15 @@ arm_vfp_cprc_sub_candidate (struct type
case TYPE_CODE_STRUCT:
{
@@ -271,7 +270,7 @@ Index: gdb-7.9.50.20150520/gdb/arm-tdep.c
if (sub_count == -1)
return -1;
count += sub_count;
-@@ -3646,13 +3648,15 @@ arm_vfp_cprc_sub_candidate (struct type
+@@ -3640,13 +3642,15 @@ arm_vfp_cprc_sub_candidate (struct type
case TYPE_CODE_UNION:
{
@@ -290,7 +289,7 @@ Index: gdb-7.9.50.20150520/gdb/arm-tdep.c
if (sub_count == -1)
return -1;
count = (count > sub_count ? count : sub_count);
-@@ -3688,7 +3692,7 @@ arm_vfp_call_candidate (struct type *t,
+@@ -3682,7 +3686,7 @@ arm_vfp_call_candidate (struct type *t,
int *count)
{
enum arm_vfp_cprc_base_type b = VFP_CPRC_UNKNOWN;
@@ -299,7 +298,7 @@ Index: gdb-7.9.50.20150520/gdb/arm-tdep.c
if (c <= 0 || c > 4)
return 0;
*base_type = b;
-@@ -3769,7 +3773,7 @@ arm_push_dummy_call (struct gdbarch *gdb
+@@ -3763,7 +3767,7 @@ arm_push_dummy_call (struct gdbarch *gdb
for (argnum = 0; argnum < nargs; argnum++)
{
@@ -308,28 +307,27 @@ Index: gdb-7.9.50.20150520/gdb/arm-tdep.c
struct type *arg_type;
struct type *target_type;
enum type_code typecode;
-Index: gdb-7.9.50.20150520/gdb/avr-tdep.c
+Index: gdb-7.10.50.20151022/gdb/avr-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/avr-tdep.c 2015-05-31 17:15:01.071868129 +0200
-+++ gdb-7.9.50.20150520/gdb/avr-tdep.c 2015-05-31 17:15:03.425882884 +0200
-@@ -1196,13 +1196,14 @@ avr_dummy_id (struct gdbarch *gdbarch, s
+--- gdb-7.10.50.20151022.orig/gdb/avr-tdep.c 2015-10-24 23:14:17.801039386 +0200
++++ gdb-7.10.50.20151022/gdb/avr-tdep.c 2015-10-24 23:15:35.775557325 +0200
+@@ -1196,13 +1196,13 @@ avr_dummy_id (struct gdbarch *gdbarch, s
struct stack_item
{
- int len;
+ ssize_t len;
struct stack_item *prev;
- void *data;
+ gdb_byte *data;
};
static struct stack_item *
-push_stack_item (struct stack_item *prev, const bfd_byte *contents, int len)
-+push_stack_item (struct stack_item *prev, const bfd_byte *contents,
-+ ssize_t len)
++push_stack_item (struct stack_item *prev, const bfd_byte *contents, ssize_t len)
{
struct stack_item *si;
- si = xmalloc (sizeof (struct stack_item));
-@@ -1291,12 +1292,12 @@ avr_push_dummy_call (struct gdbarch *gdb
+ si = XNEW (struct stack_item);
+@@ -1291,12 +1291,12 @@ avr_push_dummy_call (struct gdbarch *gdb
for (i = 0; i < nargs; i++)
{
@@ -345,10 +343,10 @@ Index: gdb-7.9.50.20150520/gdb/avr-tdep.c
/* Calculate the potential last register needed. */
last_regnum = regnum - (len + (len & 1));
-Index: gdb-7.9.50.20150520/gdb/bfin-tdep.c
+Index: gdb-7.10.50.20151022/gdb/bfin-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/bfin-tdep.c 2015-05-31 17:15:01.071868129 +0200
-+++ gdb-7.9.50.20150520/gdb/bfin-tdep.c 2015-05-31 17:15:03.426882890 +0200
+--- gdb-7.10.50.20151022.orig/gdb/bfin-tdep.c 2015-10-24 23:14:17.802039393 +0200
++++ gdb-7.10.50.20151022/gdb/bfin-tdep.c 2015-10-24 23:14:20.937060217 +0200
@@ -504,7 +504,7 @@ bfin_push_dummy_call (struct gdbarch *gd
gdb_byte buf[4];
int i;
@@ -367,10 +365,10 @@ Index: gdb-7.9.50.20150520/gdb/bfin-tdep.c
sp -= container_len;
write_memory (sp, value_contents_writeable (args[i]), container_len);
-Index: gdb-7.9.50.20150520/gdb/cris-tdep.c
+Index: gdb-7.10.50.20151022/gdb/cris-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/cris-tdep.c 2015-05-31 17:15:01.073868142 +0200
-+++ gdb-7.9.50.20150520/gdb/cris-tdep.c 2015-05-31 17:15:03.427882897 +0200
+--- gdb-7.10.50.20151022.orig/gdb/cris-tdep.c 2015-10-24 23:14:17.802039393 +0200
++++ gdb-7.10.50.20151022/gdb/cris-tdep.c 2015-10-24 23:15:58.902710945 +0200
@@ -663,13 +663,13 @@ static CORE_ADDR cris_unwind_sp (struct
struct stack_item
@@ -378,16 +376,16 @@ Index: gdb-7.9.50.20150520/gdb/cris-tdep.c
- int len;
+ ssize_t len;
struct stack_item *prev;
- void *data;
+ gdb_byte *data;
};
static struct stack_item *
-push_stack_item (struct stack_item *prev, const gdb_byte *contents, int len)
+push_stack_item (struct stack_item *prev, const gdb_byte *contents, ssize_t len)
{
- struct stack_item *si;
- si = xmalloc (sizeof (struct stack_item));
-@@ -842,13 +842,13 @@ cris_push_dummy_call (struct gdbarch *gd
+ struct stack_item *si = XNEW (struct stack_item);
+ si->data = (gdb_byte *) xmalloc (len);
+@@ -841,13 +841,13 @@ cris_push_dummy_call (struct gdbarch *gd
for (argnum = 0; argnum < nargs; argnum++)
{
@@ -405,10 +403,10 @@ Index: gdb-7.9.50.20150520/gdb/cris-tdep.c
/* How may registers worth of storage do we need for this argument? */
reg_demand = (len / 4) + (len % 4 != 0 ? 1 : 0);
-Index: gdb-7.9.50.20150520/gdb/h8300-tdep.c
+Index: gdb-7.10.50.20151022/gdb/h8300-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/h8300-tdep.c 2015-05-31 17:15:01.074868148 +0200
-+++ gdb-7.9.50.20150520/gdb/h8300-tdep.c 2015-05-31 17:15:03.427882897 +0200
+--- gdb-7.10.50.20151022.orig/gdb/h8300-tdep.c 2015-10-24 23:14:17.803039400 +0200
++++ gdb-7.10.50.20151022/gdb/h8300-tdep.c 2015-10-24 23:16:33.653941777 +0200
@@ -639,7 +639,7 @@ h8300_push_dummy_call (struct gdbarch *g
int struct_return, CORE_ADDR struct_addr)
{
@@ -423,13 +421,13 @@ Index: gdb-7.9.50.20150520/gdb/h8300-tdep.c
struct cleanup *back_to;
struct type *type = value_type (args[argument]);
- int len = TYPE_LENGTH (type);
- char *contents = (char *) value_contents (args[argument]);
+ ssize_t len = TYPE_LENGTH (type);
+ char *contents = (char *) value_contents (args[argument]);
/* Pad the argument appropriately. */
- int padded_len = align_up (len, wordsize);
+ ssize_t padded_len = align_up (len, wordsize);
- gdb_byte *padded = xmalloc (padded_len);
+ gdb_byte *padded = (gdb_byte *) xmalloc (padded_len);
back_to = make_cleanup (xfree, padded);
@@ -699,7 +699,7 @@ h8300_push_dummy_call (struct gdbarch *g
@@ -441,11 +439,11 @@ Index: gdb-7.9.50.20150520/gdb/h8300-tdep.c
for (offset = 0; offset < padded_len; offset += wordsize)
{
-Index: gdb-7.9.50.20150520/gdb/hppa-tdep.c
+Index: gdb-7.10.50.20151022/gdb/hppa-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/hppa-tdep.c 2015-05-31 17:15:01.076868160 +0200
-+++ gdb-7.9.50.20150520/gdb/hppa-tdep.c 2015-05-31 17:15:03.428882903 +0200
-@@ -991,7 +991,7 @@ hppa64_push_dummy_call (struct gdbarch *
+--- gdb-7.10.50.20151022.orig/gdb/hppa-tdep.c 2015-10-24 23:14:17.804039407 +0200
++++ gdb-7.10.50.20151022/gdb/hppa-tdep.c 2015-10-24 23:14:20.939060231 +0200
+@@ -996,7 +996,7 @@ hppa64_push_dummy_call (struct gdbarch *
{
struct value *arg = args[i];
struct type *type = value_type (arg);
@@ -454,7 +452,7 @@ Index: gdb-7.9.50.20150520/gdb/hppa-tdep.c
const bfd_byte *valbuf;
bfd_byte fptrbuf[8];
int regnum;
-@@ -1186,7 +1186,7 @@ hppa64_return_value (struct gdbarch *gdb
+@@ -1191,7 +1191,7 @@ hppa64_return_value (struct gdbarch *gdb
struct type *type, struct regcache *regcache,
gdb_byte *readbuf, const gdb_byte *writebuf)
{
@@ -463,10 +461,10 @@ Index: gdb-7.9.50.20150520/gdb/hppa-tdep.c
int regnum, offset;
if (len > 16)
-Index: gdb-7.9.50.20150520/gdb/i386-darwin-tdep.c
+Index: gdb-7.10.50.20151022/gdb/i386-darwin-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/i386-darwin-tdep.c 2015-05-31 17:15:01.076868160 +0200
-+++ gdb-7.9.50.20150520/gdb/i386-darwin-tdep.c 2015-05-31 17:15:03.428882903 +0200
+--- gdb-7.10.50.20151022.orig/gdb/i386-darwin-tdep.c 2015-10-24 23:14:17.804039407 +0200
++++ gdb-7.10.50.20151022/gdb/i386-darwin-tdep.c 2015-10-24 23:14:20.939060231 +0200
@@ -163,7 +163,7 @@ i386_darwin_push_dummy_call (struct gdba
for (write_pass = 0; write_pass < 2; write_pass++)
@@ -476,10 +474,10 @@ Index: gdb-7.9.50.20150520/gdb/i386-darwin-tdep.c
int num_m128 = 0;
if (struct_return)
-Index: gdb-7.9.50.20150520/gdb/i386-tdep.c
+Index: gdb-7.10.50.20151022/gdb/i386-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/i386-tdep.c 2015-05-31 17:15:01.082868198 +0200
-+++ gdb-7.9.50.20150520/gdb/i386-tdep.c 2015-05-31 17:15:03.430882915 +0200
+--- gdb-7.10.50.20151022.orig/gdb/i386-tdep.c 2015-10-24 23:14:17.807039426 +0200
++++ gdb-7.10.50.20151022/gdb/i386-tdep.c 2015-10-24 23:14:20.940060237 +0200
@@ -2651,7 +2651,7 @@ i386_push_dummy_call (struct gdbarch *gd
gdb_byte buf[4];
int i;
@@ -543,10 +541,10 @@ Index: gdb-7.9.50.20150520/gdb/i386-tdep.c
if (i386_fp_regnum_p (get_frame_arch (frame), regnum))
{
-Index: gdb-7.9.50.20150520/gdb/iq2000-tdep.c
+Index: gdb-7.10.50.20151022/gdb/iq2000-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/iq2000-tdep.c 2015-05-31 17:15:01.083868204 +0200
-+++ gdb-7.9.50.20150520/gdb/iq2000-tdep.c 2015-05-31 17:15:03.431882922 +0200
+--- gdb-7.10.50.20151022.orig/gdb/iq2000-tdep.c 2015-10-24 23:14:17.808039433 +0200
++++ gdb-7.10.50.20151022/gdb/iq2000-tdep.c 2015-10-24 23:14:20.941060244 +0200
@@ -651,8 +651,9 @@ iq2000_push_dummy_call (struct gdbarch *
const bfd_byte *val;
bfd_byte buf[4];
@@ -559,10 +557,10 @@ Index: gdb-7.9.50.20150520/gdb/iq2000-tdep.c
/* Used to copy struct arguments into the stack. */
CORE_ADDR struct_ptr;
-Index: gdb-7.9.50.20150520/gdb/m32r-tdep.c
+Index: gdb-7.10.50.20151022/gdb/m32r-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/m32r-tdep.c 2015-05-31 17:15:01.083868204 +0200
-+++ gdb-7.9.50.20150520/gdb/m32r-tdep.c 2015-05-31 17:15:03.431882922 +0200
+--- gdb-7.10.50.20151022.orig/gdb/m32r-tdep.c 2015-10-24 23:14:17.808039433 +0200
++++ gdb-7.10.50.20151022/gdb/m32r-tdep.c 2015-10-24 23:14:20.941060244 +0200
@@ -687,7 +687,7 @@ m32r_push_dummy_call (struct gdbarch *gd
CORE_ADDR regval;
gdb_byte *val;
@@ -572,10 +570,10 @@ Index: gdb-7.9.50.20150520/gdb/m32r-tdep.c
/* First force sp to a 4-byte alignment. */
sp = sp & ~3;
-Index: gdb-7.9.50.20150520/gdb/m68k-tdep.c
+Index: gdb-7.10.50.20151022/gdb/m68k-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/m68k-tdep.c 2015-05-31 17:15:01.084868210 +0200
-+++ gdb-7.9.50.20150520/gdb/m68k-tdep.c 2015-05-31 17:15:03.432882928 +0200
+--- gdb-7.10.50.20151022.orig/gdb/m68k-tdep.c 2015-10-24 23:14:17.808039433 +0200
++++ gdb-7.10.50.20151022/gdb/m68k-tdep.c 2015-10-24 23:14:20.941060244 +0200
@@ -382,7 +382,7 @@ m68k_reg_struct_return_p (struct gdbarch
{
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
@@ -598,10 +596,10 @@ Index: gdb-7.9.50.20150520/gdb/m68k-tdep.c
/* Non-scalars bigger than 4 bytes are left aligned, others are
right aligned. */
-Index: gdb-7.9.50.20150520/gdb/m88k-tdep.c
+Index: gdb-7.10.50.20151022/gdb/m88k-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/m88k-tdep.c 2015-05-31 17:15:01.085868217 +0200
-+++ gdb-7.9.50.20150520/gdb/m88k-tdep.c 2015-05-31 17:15:03.432882928 +0200
+--- gdb-7.10.50.20151022.orig/gdb/m88k-tdep.c 2015-10-24 23:14:17.809039440 +0200
++++ gdb-7.10.50.20151022/gdb/m88k-tdep.c 2015-10-24 23:14:20.942060250 +0200
@@ -257,13 +257,13 @@ m88k_store_arguments (struct regcache *r
{
struct gdbarch *gdbarch = get_regcache_arch (regcache);
@@ -629,11 +627,11 @@ Index: gdb-7.9.50.20150520/gdb/m88k-tdep.c
if (m88k_in_register_p (type))
{
-Index: gdb-7.9.50.20150520/gdb/mep-tdep.c
+Index: gdb-7.10.50.20151022/gdb/mep-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/mep-tdep.c 2015-05-31 17:15:01.086868223 +0200
-+++ gdb-7.9.50.20150520/gdb/mep-tdep.c 2015-05-31 17:15:03.433882934 +0200
-@@ -2269,7 +2269,7 @@ push_large_arguments (CORE_ADDR sp, int
+--- gdb-7.10.50.20151022.orig/gdb/mep-tdep.c 2015-10-24 23:14:17.809039440 +0200
++++ gdb-7.10.50.20151022/gdb/mep-tdep.c 2015-10-24 23:14:20.942060250 +0200
+@@ -2270,7 +2270,7 @@ push_large_arguments (CORE_ADDR sp, int
for (i = 0; i < argc; i++)
{
@@ -642,10 +640,10 @@ Index: gdb-7.9.50.20150520/gdb/mep-tdep.c
if (arg_len > MEP_GPR_SIZE)
{
-Index: gdb-7.9.50.20150520/gdb/mips-tdep.c
+Index: gdb-7.10.50.20151022/gdb/mips-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/mips-tdep.c 2015-05-31 17:15:01.094868273 +0200
-+++ gdb-7.9.50.20150520/gdb/mips-tdep.c 2015-05-31 17:15:03.435882947 +0200
+--- gdb-7.10.50.20151022.orig/gdb/mips-tdep.c 2015-10-24 23:14:17.814039473 +0200
++++ gdb-7.10.50.20151022/gdb/mips-tdep.c 2015-10-24 23:14:20.943060257 +0200
@@ -455,7 +455,7 @@ static void
mips_xfer_register (struct gdbarch *gdbarch, struct regcache *regcache,
int reg_num, int length,
@@ -666,7 +664,7 @@ Index: gdb-7.9.50.20150520/gdb/mips-tdep.c
if (mips_debug && out != NULL)
{
int i;
-@@ -4551,13 +4551,13 @@ mips_eabi_push_dummy_call (struct gdbarc
+@@ -4554,13 +4554,13 @@ mips_eabi_push_dummy_call (struct gdbarc
gdb_byte valbuf[MAX_REGISTER_SIZE];
struct value *arg = args[argnum];
struct type *arg_type = check_typedef (value_type (arg));
@@ -683,7 +681,7 @@ Index: gdb-7.9.50.20150520/gdb/mips-tdep.c
/* The EABI passes structures that do not fit in a register by
reference. */
-@@ -4826,7 +4826,7 @@ mips_eabi_return_value (struct gdbarch *
+@@ -4829,7 +4829,7 @@ mips_eabi_return_value (struct gdbarch *
static int
mips_n32n64_fp_arg_chunk_p (struct gdbarch *gdbarch, struct type *arg_type,
@@ -692,7 +690,7 @@ Index: gdb-7.9.50.20150520/gdb/mips-tdep.c
{
int i;
-@@ -4841,7 +4841,7 @@ mips_n32n64_fp_arg_chunk_p (struct gdbar
+@@ -4844,7 +4844,7 @@ mips_n32n64_fp_arg_chunk_p (struct gdbar
for (i = 0; i < TYPE_NFIELDS (arg_type); i++)
{
@@ -701,7 +699,7 @@ Index: gdb-7.9.50.20150520/gdb/mips-tdep.c
struct type *field_type;
/* We're only looking at normal fields. */
-@@ -4883,7 +4883,7 @@ mips_n32n64_push_dummy_call (struct gdba
+@@ -4886,7 +4886,7 @@ mips_n32n64_push_dummy_call (struct gdba
int argreg;
int float_argreg;
int argnum;
@@ -710,7 +708,7 @@ Index: gdb-7.9.50.20150520/gdb/mips-tdep.c
int stack_offset = 0;
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
CORE_ADDR func_addr = find_function_addr (function, NULL);
-@@ -5234,11 +5234,11 @@ mips_n32n64_return_value (struct gdbarch
+@@ -5237,11 +5237,11 @@ mips_n32n64_return_value (struct gdbarch
: MIPS_V0_REGNUM);
field < TYPE_NFIELDS (type); field++, regnum += 2)
{
@@ -726,7 +724,7 @@ Index: gdb-7.9.50.20150520/gdb/mips-tdep.c
if (TYPE_LENGTH (TYPE_FIELD_TYPE (type, field)) == 16)
{
/* A 16-byte long double field goes in two consecutive
-@@ -5280,8 +5280,8 @@ mips_n32n64_return_value (struct gdbarch
+@@ -5283,8 +5283,8 @@ mips_n32n64_return_value (struct gdbarch
if (offset + xfer > TYPE_LENGTH (type))
xfer = TYPE_LENGTH (type) - offset;
if (mips_debug)
@@ -737,7 +735,7 @@ Index: gdb-7.9.50.20150520/gdb/mips-tdep.c
mips_xfer_register (gdbarch, regcache,
gdbarch_num_regs (gdbarch) + regnum,
xfer, BFD_ENDIAN_UNKNOWN, readbuf, writebuf,
-@@ -5339,7 +5339,7 @@ mips_o32_push_dummy_call (struct gdbarch
+@@ -5342,7 +5342,7 @@ mips_o32_push_dummy_call (struct gdbarch
int argreg;
int float_argreg;
int argnum;
@@ -746,7 +744,7 @@ Index: gdb-7.9.50.20150520/gdb/mips-tdep.c
int stack_offset = 0;
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
CORE_ADDR func_addr = find_function_addr (function, NULL);
-@@ -5403,13 +5403,13 @@ mips_o32_push_dummy_call (struct gdbarch
+@@ -5406,13 +5406,13 @@ mips_o32_push_dummy_call (struct gdbarch
const gdb_byte *val;
struct value *arg = args[argnum];
struct type *arg_type = check_typedef (value_type (arg));
@@ -763,7 +761,7 @@ Index: gdb-7.9.50.20150520/gdb/mips-tdep.c
val = value_contents (arg);
-@@ -5867,8 +5867,8 @@ mips_o64_push_dummy_call (struct gdbarch
+@@ -5870,8 +5870,8 @@ mips_o64_push_dummy_call (struct gdbarch
int argreg;
int float_argreg;
int argnum;
@@ -774,7 +772,7 @@ Index: gdb-7.9.50.20150520/gdb/mips-tdep.c
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
CORE_ADDR func_addr = find_function_addr (function, NULL);
-@@ -5928,13 +5928,13 @@ mips_o64_push_dummy_call (struct gdbarch
+@@ -5931,13 +5931,13 @@ mips_o64_push_dummy_call (struct gdbarch
const gdb_byte *val;
struct value *arg = args[argnum];
struct type *arg_type = check_typedef (value_type (arg));
@@ -791,11 +789,11 @@ Index: gdb-7.9.50.20150520/gdb/mips-tdep.c
val = value_contents (arg);
-Index: gdb-7.9.50.20150520/gdb/mn10300-tdep.c
+Index: gdb-7.10.50.20151022/gdb/mn10300-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/mn10300-tdep.c 2015-05-31 17:15:01.095868279 +0200
-+++ gdb-7.9.50.20150520/gdb/mn10300-tdep.c 2015-05-31 17:15:03.435882947 +0200
-@@ -1225,7 +1225,7 @@ mn10300_push_dummy_call (struct gdbarch
+--- gdb-7.10.50.20151022.orig/gdb/mn10300-tdep.c 2015-10-24 23:14:17.815039480 +0200
++++ gdb-7.10.50.20151022/gdb/mn10300-tdep.c 2015-10-24 23:14:20.943060257 +0200
+@@ -1227,7 +1227,7 @@ mn10300_push_dummy_call (struct gdbarch
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
const int push_size = register_size (gdbarch, E_PC_REGNUM);
int regs_used;
@@ -804,10 +802,10 @@ Index: gdb-7.9.50.20150520/gdb/mn10300-tdep.c
int stack_offset = 0;
int argnum;
const gdb_byte *val;
-Index: gdb-7.9.50.20150520/gdb/mt-tdep.c
+Index: gdb-7.10.50.20151022/gdb/mt-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/mt-tdep.c 2015-05-31 17:15:01.096868286 +0200
-+++ gdb-7.9.50.20150520/gdb/mt-tdep.c 2015-05-31 17:15:03.436882953 +0200
+--- gdb-7.10.50.20151022.orig/gdb/mt-tdep.c 2015-10-24 23:14:17.815039480 +0200
++++ gdb-7.10.50.20151022/gdb/mt-tdep.c 2015-10-24 23:14:20.944060264 +0200
@@ -781,9 +781,9 @@ mt_push_dummy_call (struct gdbarch *gdba
gdb_byte buf[MT_MAX_STRUCT_SIZE];
int argreg = MT_1ST_ARGREG;
@@ -820,10 +818,10 @@ Index: gdb-7.9.50.20150520/gdb/mt-tdep.c
int i, j;
/* First handle however many args we can fit into MT_1ST_ARGREG thru
-Index: gdb-7.9.50.20150520/gdb/ppc-sysv-tdep.c
+Index: gdb-7.10.50.20151022/gdb/ppc-sysv-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/ppc-sysv-tdep.c 2015-05-31 17:15:01.097868292 +0200
-+++ gdb-7.9.50.20150520/gdb/ppc-sysv-tdep.c 2015-05-31 17:15:03.436882953 +0200
+--- gdb-7.10.50.20151022.orig/gdb/ppc-sysv-tdep.c 2015-10-24 23:14:17.816039486 +0200
++++ gdb-7.10.50.20151022/gdb/ppc-sysv-tdep.c 2015-10-24 23:14:20.944060264 +0200
@@ -66,7 +66,7 @@ ppc_sysv_abi_push_dummy_call (struct gdb
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
int opencl_abi = ppc_sysv_use_opencl_abi (value_type (function));
@@ -868,11 +866,11 @@ Index: gdb-7.9.50.20150520/gdb/ppc-sysv-tdep.c
/* Enforce alignment of stack location, if requested. */
if (align > tdep->wordsize)
-Index: gdb-7.9.50.20150520/gdb/rl78-tdep.c
+Index: gdb-7.10.50.20151022/gdb/rl78-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/rl78-tdep.c 2015-05-31 17:15:01.097868292 +0200
-+++ gdb-7.9.50.20150520/gdb/rl78-tdep.c 2015-05-31 17:15:03.437882959 +0200
-@@ -1333,8 +1333,8 @@ rl78_push_dummy_call (struct gdbarch *gd
+--- gdb-7.10.50.20151022.orig/gdb/rl78-tdep.c 2015-10-24 23:14:17.816039486 +0200
++++ gdb-7.10.50.20151022/gdb/rl78-tdep.c 2015-10-24 23:14:20.944060264 +0200
+@@ -1338,8 +1338,8 @@ rl78_push_dummy_call (struct gdbarch *gd
for (i = nargs - 1; i >= 0; i--)
{
struct type *value_type = value_enclosing_type (args[i]);
@@ -883,10 +881,10 @@ Index: gdb-7.9.50.20150520/gdb/rl78-tdep.c
sp -= container_len;
write_memory (rl78_make_data_address (sp),
-Index: gdb-7.9.50.20150520/gdb/rs6000-aix-tdep.c
+Index: gdb-7.10.50.20151022/gdb/rs6000-aix-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/rs6000-aix-tdep.c 2015-05-31 17:15:01.098868298 +0200
-+++ gdb-7.9.50.20150520/gdb/rs6000-aix-tdep.c 2015-05-31 17:15:03.437882959 +0200
+--- gdb-7.10.50.20151022.orig/gdb/rs6000-aix-tdep.c 2015-10-24 23:14:17.816039486 +0200
++++ gdb-7.10.50.20151022/gdb/rs6000-aix-tdep.c 2015-10-24 23:14:20.944060264 +0200
@@ -186,9 +186,9 @@ rs6000_push_dummy_call (struct gdbarch *
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
@@ -908,11 +906,11 @@ Index: gdb-7.9.50.20150520/gdb/rs6000-aix-tdep.c
if (argbytes)
{
-Index: gdb-7.9.50.20150520/gdb/s390-linux-tdep.c
+Index: gdb-7.10.50.20151022/gdb/s390-linux-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/s390-linux-tdep.c 2015-05-31 17:15:01.099868304 +0200
-+++ gdb-7.9.50.20150520/gdb/s390-linux-tdep.c 2015-05-31 17:16:13.285320769 +0200
-@@ -2463,7 +2463,7 @@ s390_function_arg_vector (struct type *t
+--- gdb-7.10.50.20151022.orig/gdb/s390-linux-tdep.c 2015-10-24 23:14:17.817039493 +0200
++++ gdb-7.10.50.20151022/gdb/s390-linux-tdep.c 2015-10-24 23:14:20.945060270 +0200
+@@ -2571,7 +2571,7 @@ s390_function_arg_vector (struct type *t
/* Determine whether N is a power of two. */
static int
@@ -921,7 +919,7 @@ Index: gdb-7.9.50.20150520/gdb/s390-linux-tdep.c
{
return n && ((n & (n - 1)) == 0);
}
-@@ -2520,7 +2520,7 @@ s390_handle_arg (struct s390_arg_state *
+@@ -2628,7 +2628,7 @@ s390_handle_arg (struct s390_arg_state *
enum bfd_endian byte_order, int is_unnamed)
{
struct type *type = check_typedef (value_type (arg));
@@ -930,10 +928,10 @@ Index: gdb-7.9.50.20150520/gdb/s390-linux-tdep.c
int write_mode = as->regcache != NULL;
if (s390_function_arg_float (type))
-Index: gdb-7.9.50.20150520/gdb/score-tdep.c
+Index: gdb-7.10.50.20151022/gdb/score-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/score-tdep.c 2015-05-31 17:15:01.100868311 +0200
-+++ gdb-7.9.50.20150520/gdb/score-tdep.c 2015-05-31 17:15:03.439882972 +0200
+--- gdb-7.10.50.20151022.orig/gdb/score-tdep.c 2015-10-24 23:14:17.817039493 +0200
++++ gdb-7.10.50.20151022/gdb/score-tdep.c 2015-10-24 23:14:20.945060270 +0200
@@ -514,7 +514,7 @@ score_push_dummy_call (struct gdbarch *g
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
int argnum;
@@ -943,10 +941,10 @@ Index: gdb-7.9.50.20150520/gdb/score-tdep.c
CORE_ADDR stack_offset = 0;
CORE_ADDR addr = 0;
-Index: gdb-7.9.50.20150520/gdb/sh-tdep.c
+Index: gdb-7.10.50.20151022/gdb/sh-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/sh-tdep.c 2015-05-31 17:15:01.101868317 +0200
-+++ gdb-7.9.50.20150520/gdb/sh-tdep.c 2015-05-31 17:15:03.439882972 +0200
+--- gdb-7.10.50.20151022.orig/gdb/sh-tdep.c 2015-10-24 23:14:17.818039499 +0200
++++ gdb-7.10.50.20151022/gdb/sh-tdep.c 2015-10-24 23:14:20.946060277 +0200
@@ -805,7 +805,7 @@ sh_skip_prologue (struct gdbarch *gdbarc
static int
sh_use_struct_convention (int renesas_abi, struct type *type)
@@ -985,10 +983,10 @@ Index: gdb-7.9.50.20150520/gdb/sh-tdep.c
int pass_on_stack = 0;
int last_reg_arg = INT_MAX;
-Index: gdb-7.9.50.20150520/gdb/sh64-tdep.c
+Index: gdb-7.10.50.20151022/gdb/sh64-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/sh64-tdep.c 2015-05-31 17:15:01.102868323 +0200
-+++ gdb-7.9.50.20150520/gdb/sh64-tdep.c 2015-05-31 17:15:03.440882978 +0200
+--- gdb-7.10.50.20151022.orig/gdb/sh64-tdep.c 2015-10-24 23:14:17.819039506 +0200
++++ gdb-7.10.50.20151022/gdb/sh64-tdep.c 2015-10-24 23:14:20.946060277 +0200
@@ -1056,7 +1056,7 @@ sh64_push_dummy_call (struct gdbarch *gd
CORE_ADDR struct_addr)
{
@@ -1007,10 +1005,10 @@ Index: gdb-7.9.50.20150520/gdb/sh64-tdep.c
int argreg_size;
int fp_args[12];
-Index: gdb-7.9.50.20150520/gdb/sparc-tdep.c
+Index: gdb-7.10.50.20151022/gdb/sparc-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/sparc-tdep.c 2015-05-31 17:15:01.103868329 +0200
-+++ gdb-7.9.50.20150520/gdb/sparc-tdep.c 2015-05-31 17:15:03.441882984 +0200
+--- gdb-7.10.50.20151022.orig/gdb/sparc-tdep.c 2015-10-24 23:14:17.819039506 +0200
++++ gdb-7.10.50.20151022/gdb/sparc-tdep.c 2015-10-24 23:14:20.946060277 +0200
@@ -525,7 +525,7 @@ sparc32_store_arguments (struct regcache
for (i = 0; i < nargs; i++)
{
@@ -1020,10 +1018,10 @@ Index: gdb-7.9.50.20150520/gdb/sparc-tdep.c
if (sparc_structure_or_union_p (type)
|| (sparc_floating_p (type) && len == 16)
-Index: gdb-7.9.50.20150520/gdb/sparc64-tdep.c
+Index: gdb-7.10.50.20151022/gdb/sparc64-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/sparc64-tdep.c 2015-05-31 17:15:01.104868336 +0200
-+++ gdb-7.9.50.20150520/gdb/sparc64-tdep.c 2015-05-31 17:15:03.441882984 +0200
+--- gdb-7.10.50.20151022.orig/gdb/sparc64-tdep.c 2015-10-24 23:14:17.820039513 +0200
++++ gdb-7.10.50.20151022/gdb/sparc64-tdep.c 2015-10-24 23:14:20.947060284 +0200
@@ -636,7 +636,8 @@ sparc64_16_byte_align_p (struct type *ty
static void
@@ -1079,11 +1077,11 @@ Index: gdb-7.9.50.20150520/gdb/sparc64-tdep.c
int regnum = -1;
gdb_byte buf[16];
-Index: gdb-7.9.50.20150520/gdb/spu-tdep.c
+Index: gdb-7.10.50.20151022/gdb/spu-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/spu-tdep.c 2015-05-31 17:15:01.105868342 +0200
-+++ gdb-7.9.50.20150520/gdb/spu-tdep.c 2015-05-31 17:15:03.442882990 +0200
-@@ -1430,7 +1430,7 @@ spu_push_dummy_call (struct gdbarch *gdb
+--- gdb-7.10.50.20151022.orig/gdb/spu-tdep.c 2015-10-24 23:14:17.821039519 +0200
++++ gdb-7.10.50.20151022/gdb/spu-tdep.c 2015-10-24 23:14:20.947060284 +0200
+@@ -1429,7 +1429,7 @@ spu_push_dummy_call (struct gdbarch *gdb
struct value *arg = args[i];
struct type *type = check_typedef (value_type (arg));
const gdb_byte *contents = value_contents (arg);
@@ -1092,7 +1090,7 @@ Index: gdb-7.9.50.20150520/gdb/spu-tdep.c
/* If the argument doesn't wholly fit into registers, it and
all subsequent arguments go to the stack. */
-@@ -1462,7 +1462,7 @@ spu_push_dummy_call (struct gdbarch *gdb
+@@ -1461,7 +1461,7 @@ spu_push_dummy_call (struct gdbarch *gdb
{
struct value *arg = args[i];
struct type *type = check_typedef (value_type (arg));
@@ -1101,10 +1099,10 @@ Index: gdb-7.9.50.20150520/gdb/spu-tdep.c
int preferred_slot;
if (spu_scalar_value_p (type))
-Index: gdb-7.9.50.20150520/gdb/tic6x-tdep.c
+Index: gdb-7.10.50.20151022/gdb/tic6x-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/tic6x-tdep.c 2015-05-31 17:15:01.106868348 +0200
-+++ gdb-7.9.50.20150520/gdb/tic6x-tdep.c 2015-05-31 17:15:03.442882990 +0200
+--- gdb-7.10.50.20151022.orig/gdb/tic6x-tdep.c 2015-10-24 23:14:17.821039519 +0200
++++ gdb-7.10.50.20151022/gdb/tic6x-tdep.c 2015-10-24 23:14:20.947060284 +0200
@@ -895,7 +895,7 @@ tic6x_push_dummy_call (struct gdbarch *g
int argreg = 0;
int argnum;
@@ -1142,10 +1140,10 @@ Index: gdb-7.9.50.20150520/gdb/tic6x-tdep.c
addr = sp + stack_offset;
write_memory (addr, val, len);
-Index: gdb-7.9.50.20150520/gdb/tilegx-tdep.c
+Index: gdb-7.10.50.20151022/gdb/tilegx-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/tilegx-tdep.c 2015-05-31 17:15:01.107868355 +0200
-+++ gdb-7.9.50.20150520/gdb/tilegx-tdep.c 2015-05-31 17:15:03.442882990 +0200
+--- gdb-7.10.50.20151022.orig/gdb/tilegx-tdep.c 2015-10-24 23:14:17.822039526 +0200
++++ gdb-7.10.50.20151022/gdb/tilegx-tdep.c 2015-10-24 23:14:20.947060284 +0200
@@ -288,7 +288,7 @@ tilegx_push_dummy_call (struct gdbarch *
CORE_ADDR stack_dest = sp;
int argreg = TILEGX_R0_REGNUM;
@@ -1155,10 +1153,10 @@ Index: gdb-7.9.50.20150520/gdb/tilegx-tdep.c
static const gdb_byte four_zero_words[16] = { 0 };
/* If struct_return is 1, then the struct return address will
-Index: gdb-7.9.50.20150520/gdb/v850-tdep.c
+Index: gdb-7.10.50.20151022/gdb/v850-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/v850-tdep.c 2015-05-31 17:15:01.107868355 +0200
-+++ gdb-7.9.50.20150520/gdb/v850-tdep.c 2015-05-31 17:15:03.443882997 +0200
+--- gdb-7.10.50.20151022.orig/gdb/v850-tdep.c 2015-10-24 23:14:17.822039526 +0200
++++ gdb-7.10.50.20151022/gdb/v850-tdep.c 2015-10-24 23:14:20.948060290 +0200
@@ -1019,7 +1019,7 @@ v850_push_dummy_call (struct gdbarch *gd
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
int argreg;
@@ -1177,10 +1175,10 @@ Index: gdb-7.9.50.20150520/gdb/v850-tdep.c
gdb_byte *val;
gdb_byte valbuf[v850_reg_size];
-Index: gdb-7.9.50.20150520/gdb/vax-tdep.c
+Index: gdb-7.10.50.20151022/gdb/vax-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/vax-tdep.c 2015-05-31 17:15:01.108868361 +0200
-+++ gdb-7.9.50.20150520/gdb/vax-tdep.c 2015-05-31 17:15:03.443882997 +0200
+--- gdb-7.10.50.20151022.orig/gdb/vax-tdep.c 2015-10-24 23:14:17.822039526 +0200
++++ gdb-7.10.50.20151022/gdb/vax-tdep.c 2015-10-24 23:14:20.948060290 +0200
@@ -111,7 +111,7 @@ vax_store_arguments (struct regcache *re
struct gdbarch *gdbarch = get_regcache_arch (regcache);
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
@@ -1199,10 +1197,10 @@ Index: gdb-7.9.50.20150520/gdb/vax-tdep.c
sp -= (len + 3) & ~3;
count += (len + 3) / 4;
-Index: gdb-7.9.50.20150520/gdb/xstormy16-tdep.c
+Index: gdb-7.10.50.20151022/gdb/xstormy16-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/xstormy16-tdep.c 2015-05-31 17:15:01.108868361 +0200
-+++ gdb-7.9.50.20150520/gdb/xstormy16-tdep.c 2015-05-31 17:15:03.443882997 +0200
+--- gdb-7.10.50.20151022.orig/gdb/xstormy16-tdep.c 2015-10-24 23:14:17.822039526 +0200
++++ gdb-7.10.50.20151022/gdb/xstormy16-tdep.c 2015-10-24 23:14:20.948060290 +0200
@@ -233,8 +233,9 @@ xstormy16_push_dummy_call (struct gdbarc
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
CORE_ADDR stack_dest = sp;
@@ -1215,11 +1213,11 @@ Index: gdb-7.9.50.20150520/gdb/xstormy16-tdep.c
const gdb_byte *val;
gdb_byte buf[xstormy16_pc_size];
-Index: gdb-7.9.50.20150520/gdb/xtensa-tdep.c
+Index: gdb-7.10.50.20151022/gdb/xtensa-tdep.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/xtensa-tdep.c 2015-05-31 17:15:01.110868373 +0200
-+++ gdb-7.9.50.20150520/gdb/xtensa-tdep.c 2015-05-31 17:15:03.444883003 +0200
-@@ -1646,8 +1646,7 @@ xtensa_store_return_value (struct type *
+--- gdb-7.10.50.20151022.orig/gdb/xtensa-tdep.c 2015-10-24 23:14:17.824039539 +0200
++++ gdb-7.10.50.20151022/gdb/xtensa-tdep.c 2015-10-24 23:14:20.948060290 +0200
+@@ -1640,8 +1640,7 @@ xtensa_store_return_value (struct type *
if (len > (callsize > 8 ? 8 : 16))
internal_error (__FILE__, __LINE__,
@@ -1229,7 +1227,7 @@ Index: gdb-7.9.50.20150520/gdb/xtensa-tdep.c
areg = arreg_number (gdbarch,
gdbarch_tdep (gdbarch)->a0_base + 2 + callsize, wb);
-@@ -1721,18 +1720,18 @@ xtensa_push_dummy_call (struct gdbarch *
+@@ -1715,18 +1714,18 @@ xtensa_push_dummy_call (struct gdbarch *
{
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
int i;
@@ -1251,7 +1249,7 @@ Index: gdb-7.9.50.20150520/gdb/xtensa-tdep.c
int regno; /* regno if in register. */
} u;
};
-@@ -1756,9 +1755,10 @@ xtensa_push_dummy_call (struct gdbarch *
+@@ -1750,9 +1749,10 @@ xtensa_push_dummy_call (struct gdbarch *
{
struct value *arg = args[i];
struct type *arg_type = check_typedef (value_type (arg));
@@ -1265,7 +1263,7 @@ Index: gdb-7.9.50.20150520/gdb/xtensa-tdep.c
switch (TYPE_CODE (arg_type))
{
case TYPE_CODE_INT:
-@@ -1828,8 +1828,8 @@ xtensa_push_dummy_call (struct gdbarch *
+@@ -1822,8 +1822,8 @@ xtensa_push_dummy_call (struct gdbarch *
info->align = TYPE_LENGTH (builtin_type (gdbarch)->builtin_long);
break;
}
@@ -1275,7 +1273,7 @@ Index: gdb-7.9.50.20150520/gdb/xtensa-tdep.c
/* Align size and onstack_size. */
size = (size + info->align - 1) & ~(info->align - 1);
-@@ -1874,7 +1874,7 @@ xtensa_push_dummy_call (struct gdbarch *
+@@ -1868,7 +1868,7 @@ xtensa_push_dummy_call (struct gdbarch *
if (info->onstack)
{
@@ -1284,7 +1282,7 @@ Index: gdb-7.9.50.20150520/gdb/xtensa-tdep.c
CORE_ADDR offset = sp + info->u.offset;
/* Odd-sized structs are aligned to the lower side of a memory
-@@ -1890,7 +1890,7 @@ xtensa_push_dummy_call (struct gdbarch *
+@@ -1884,7 +1884,7 @@ xtensa_push_dummy_call (struct gdbarch *
}
else
{
diff --git a/gdb-rhbz795424-bitpos-25of25.patch b/gdb-rhbz795424-bitpos-25of25.patch
index 6fe684e..20db915 100644
--- a/gdb-rhbz795424-bitpos-25of25.patch
+++ b/gdb-rhbz795424-bitpos-25of25.patch
@@ -47,10 +47,10 @@ Content-Type: text/x-patch
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename=f77-bounds.patch
-Index: gdb-7.8.50.20141228/gdb/f-lang.h
+Index: gdb-7.10.50.20151027/gdb/f-lang.h
===================================================================
---- gdb-7.8.50.20141228.orig/gdb/f-lang.h 2015-01-06 22:46:31.620852996 +0100
-+++ gdb-7.8.50.20141228/gdb/f-lang.h 2015-01-06 22:46:34.190865466 +0100
+--- gdb-7.10.50.20151027.orig/gdb/f-lang.h 2015-11-02 21:25:14.233161097 +0100
++++ gdb-7.10.50.20151027/gdb/f-lang.h 2015-11-02 21:25:22.404214860 +0100
@@ -62,9 +62,9 @@ struct common_block
struct symbol *contents[1];
};
@@ -63,11 +63,11 @@ Index: gdb-7.8.50.20141228/gdb/f-lang.h
extern void f77_get_dynamic_array_length (struct type *);
-Index: gdb-7.8.50.20141228/gdb/f-typeprint.c
+Index: gdb-7.10.50.20151027/gdb/f-typeprint.c
===================================================================
---- gdb-7.8.50.20141228.orig/gdb/f-typeprint.c 2015-01-06 22:46:31.621853001 +0100
-+++ gdb-7.8.50.20141228/gdb/f-typeprint.c 2015-01-06 22:47:03.731008798 +0100
-@@ -158,7 +158,7 @@ f_type_print_varspec_suffix (struct type
+--- gdb-7.10.50.20151027.orig/gdb/f-typeprint.c 2015-11-02 21:25:14.234161104 +0100
++++ gdb-7.10.50.20151027/gdb/f-typeprint.c 2015-11-02 21:25:22.404214860 +0100
+@@ -171,7 +171,7 @@ f_type_print_varspec_suffix (struct type
int show, int passed_a_ptr, int demangled_args,
int arrayprint_recurse_level)
{
@@ -76,7 +76,7 @@ Index: gdb-7.8.50.20141228/gdb/f-typeprint.c
/* No static variables are permitted as an error call may occur during
execution of this function. */
-@@ -192,7 +192,7 @@ f_type_print_varspec_suffix (struct type
+@@ -204,7 +204,7 @@ f_type_print_varspec_suffix (struct type
lower_bound = f77_get_lowerbound (type);
if (lower_bound != 1) /* Not the default. */
@@ -85,7 +85,7 @@ Index: gdb-7.8.50.20141228/gdb/f-typeprint.c
/* Make sure that, if we have an assumed size array, we
print out a warning and print the upperbound as '*'. */
-@@ -202,7 +202,7 @@ f_type_print_varspec_suffix (struct type
+@@ -214,7 +214,7 @@ f_type_print_varspec_suffix (struct type
else
{
upper_bound = f77_get_upperbound (type);
@@ -94,7 +94,7 @@ Index: gdb-7.8.50.20141228/gdb/f-typeprint.c
}
if (TYPE_CODE (TYPE_TARGET_TYPE (type)) != TYPE_CODE_ARRAY)
-@@ -271,7 +271,7 @@ void
+@@ -283,7 +283,7 @@ void
f_type_print_base (struct type *type, struct ui_file *stream, int show,
int level)
{
@@ -103,7 +103,7 @@ Index: gdb-7.8.50.20141228/gdb/f-typeprint.c
int index;
QUIT;
-@@ -353,7 +353,7 @@ f_type_print_base (struct type *type, st
+@@ -365,7 +365,7 @@ f_type_print_base (struct type *type, st
else
{
upper_bound = f77_get_upperbound (type);
@@ -112,10 +112,10 @@ Index: gdb-7.8.50.20141228/gdb/f-typeprint.c
}
break;
-Index: gdb-7.8.50.20141228/gdb/f-valprint.c
+Index: gdb-7.10.50.20151027/gdb/f-valprint.c
===================================================================
---- gdb-7.8.50.20141228.orig/gdb/f-valprint.c 2015-01-06 22:46:31.621853001 +0100
-+++ gdb-7.8.50.20141228/gdb/f-valprint.c 2015-01-06 22:46:34.191865471 +0100
+--- gdb-7.10.50.20151027.orig/gdb/f-valprint.c 2015-11-02 21:25:14.234161104 +0100
++++ gdb-7.10.50.20151027/gdb/f-valprint.c 2015-11-02 21:25:22.405214867 +0100
@@ -43,7 +43,7 @@ LONGEST f77_array_offset_tbl[MAX_FORTRAN
/* Array which holds offsets to be applied to get a row's elements
for a given array. Array also holds the size of each subarray. */
diff --git a/gdb-rhbz795424-bitpos-lazyvalue.patch b/gdb-rhbz795424-bitpos-lazyvalue.patch
index 64e1565..31978ec 100644
--- a/gdb-rhbz795424-bitpos-lazyvalue.patch
+++ b/gdb-rhbz795424-bitpos-lazyvalue.patch
@@ -1,15 +1,19 @@
---- gdb-7.5.0.20120926-m64/gdb/value.c-orig 2012-11-09 17:08:52.137406118 +0100
-+++ gdb-7.5.0.20120926-m64/gdb/value.c 2012-11-09 17:32:38.324199230 +0100
-@@ -663,7 +663,6 @@ allocate_value_lazy (struct type *type)
+Index: gdb-7.10.50.20151022/gdb/value.c
+===================================================================
+--- gdb-7.10.50.20151022.orig/gdb/value.c 2015-10-24 23:17:04.042143628 +0200
++++ gdb-7.10.50.20151022/gdb/value.c 2015-10-24 23:17:27.687300689 +0200
+@@ -934,7 +934,6 @@ allocate_value_lazy (struct type *type)
description correctly. */
check_typedef (type);
- ulongest_fits_host_or_error (TYPE_LENGTH (type));
- val = (struct value *) xzalloc (sizeof (struct value));
+ val = XCNEW (struct value);
val->contents = NULL;
val->next = all_values;
---- /dev/null 2012-10-18 11:08:13.202328239 +0200
-+++ gdb-7.5.0.20120926-m64-test/gdb/testsuite/gdb.base/longest-types-64bit.exp 2012-11-09 18:13:56.286587994 +0100
+Index: gdb-7.10.50.20151022/gdb/testsuite/gdb.base/longest-types-64bit.exp
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ gdb-7.10.50.20151022/gdb/testsuite/gdb.base/longest-types-64bit.exp 2015-10-24 23:17:04.042143628 +0200
@@ -0,0 +1,59 @@
+# This testcase is part of GDB, the GNU debugger.
+
@@ -70,8 +74,10 @@
+}
+
+test "native"
---- /dev/null 2012-10-18 11:08:13.202328239 +0200
-+++ ./gdb/testsuite/gdb.base/longest-types-64bit.c 2012-11-09 17:08:51.374406344 +0100
+Index: gdb-7.10.50.20151022/gdb/testsuite/gdb.base/longest-types-64bit.c
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ gdb-7.10.50.20151022/gdb/testsuite/gdb.base/longest-types-64bit.c 2015-10-24 23:17:04.042143628 +0200
@@ -0,0 +1,28 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@@ -101,8 +107,10 @@
+{
+ return 0;
+}
---- /dev/null 2012-10-18 11:08:13.202328239 +0200
-+++ ./gdb/testsuite/gdb.base/longest-types-64bit.S 2012-11-09 17:51:37.597846130 +0100
+Index: gdb-7.10.50.20151022/gdb/testsuite/gdb.base/longest-types-64bit.S
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ gdb-7.10.50.20151022/gdb/testsuite/gdb.base/longest-types-64bit.S 2015-10-24 23:17:04.042143628 +0200
@@ -0,0 +1,249 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@@ -353,8 +361,10 @@
+ .string "char"
+ .ident "GCC: (GNU) 4.7.3 20121109 (prerelease)"
+ .section .note.GNU-stack,"",@progbits
---- /dev/null 2012-10-18 11:08:13.202328239 +0200
-+++ gdb-7.5.0.20120926-m64-test/gdb/testsuite/gdb.base/longest-types-64bit.bz2.uu 2012-11-09 18:04:52.995692771 +0100
+Index: gdb-7.10.50.20151022/gdb/testsuite/gdb.base/longest-types-64bit.bz2.uu
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ gdb-7.10.50.20151022/gdb/testsuite/gdb.base/longest-types-64bit.bz2.uu 2015-10-24 23:17:04.042143628 +0200
@@ -0,0 +1,67 @@
+begin 755 gdb.base/longest-types-64bit.bz2
+M0EIH.3%!62936<'N#OH`"G/________^______?_Y______//]7SQD5'^/_%
diff --git a/gdb-upstream.patch b/gdb-upstream.patch
new file mode 100644
index 0000000..3e53d46
--- /dev/null
+++ b/gdb-upstream.patch
@@ -0,0 +1,69 @@
+http://sourceware.org/ml/gdb-patches/2015-10/msg00510.html
+Subject: [patch] Fix access_to_packed_array.exp typos/errors [Re: [PATCH] [Ada] Fix the evaluation of access to packed array subscript]
+
+
+--r5Pyd7+fXNt84Ff3
+Content-Type: text/plain; charset=us-ascii
+Content-Disposition: inline
+
+On Mon, 14 Sep 2015 16:18:00 +0200, Joel Brobecker wrote:
+> > * gdb.ada/access_to_packed_array.exp: New testcase.
+>
+> Looks good to me. Please go ahead and push.
+
+Running ./gdb.ada/access_to_packed_array.exp ...
+ERROR: tcl error sourcing ./gdb.ada/access_to_packed_array.exp.
+ERROR: extra characters after close-quote
+ while executing
+"gdb_test "print pack.a" "\\(0 => 1, 2, 3, 4, 5, 6, 7, 8, 9, 10\\)")"
+ (file "./gdb.ada/access_to_packed_array.exp" line 29)
+ invoked from within
+"source ./gdb.ada/access_to_packed_array.exp"
+ ("uplevel" body line 1)
+ invoked from within
+"uplevel #0 source ./gdb.ada/access_to_packed_array.exp"
+ invoked from within
+"catch "uplevel #0 source $test_file_name""
+
+Attaching a fix of the typos.
+
+Unrelated to the typos I have changed the print expectations s/"x"/" = x"/
+as for example expectation "3" should not match " = 43".
+
+On Fedora 21 x86_64 it then:
+# of expected passes 5
+
+OK for check-in?
+
+
+Jan
+
+--r5Pyd7+fXNt84Ff3
+Content-Type: text/plain; charset=us-ascii
+Content-Disposition: inline; filename=1
+
+gdb/testsuite/ChangeLog
+2015-10-25 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * gdb.ada/access_to_packed_array.exp: Fix typos erroring the testfile.
+
+diff --git a/gdb/testsuite/gdb.ada/access_to_packed_array.exp b/gdb/testsuite/gdb.ada/access_to_packed_array.exp
+index 0dca780..1bf3e22 100644
+--- a/gdb/testsuite/gdb.ada/access_to_packed_array.exp
++++ b/gdb/testsuite/gdb.ada/access_to_packed_array.exp
+@@ -26,8 +26,8 @@ clean_restart ${testfile}
+ set bp_location [gdb_get_line_number "BREAK" ${testdir}/foo.adb]
+ runto "foo.adb:$bp_location"
+
+-gdb_test "print pack.a" "\\(0 => 1, 2, 3, 4, 5, 6, 7, 8, 9, 10\\)")
+-gdb_test "pack.aa" "\\(access pack\\.array_type\\) 0x.* <pack\\.a>")
++gdb_test "print pack.a" " = \\(0 => 1, 2, 3, 4, 5, 6, 7, 8, 9, 10\\)"
++gdb_test "print pack.aa" " = \\(access pack\\.array_type\\) 0x.* <pack\\.a>"
+
+-gdb_test "pack.a(2)" "3"
+-gdb_test "pack.aa(2)" "3"
++gdb_test "print pack.a(2)" " = 3"
++gdb_test "print pack.aa(2)" " = 3"
+
+--r5Pyd7+fXNt84Ff3--
+
diff --git a/gdb-vla-intel-04of23-fix.patch b/gdb-vla-intel-04of23-fix.patch
index ad239b5..3b8d77a 100644
--- a/gdb-vla-intel-04of23-fix.patch
+++ b/gdb-vla-intel-04of23-fix.patch
@@ -1,38 +1,38 @@
Re: [PATCH 04/23] vla: make dynamic fortran arrays functional.
https://sourceware.org/ml/gdb-patches/2014-06/msg00570.html
-Index: gdb-7.7.90.20140627/gdb/valarith.c
+Index: gdb-7.10.50.20151027/gdb/valarith.c
===================================================================
---- gdb-7.7.90.20140627.orig/gdb/valarith.c 2014-07-07 20:44:03.136394525 +0200
-+++ gdb-7.7.90.20140627/gdb/valarith.c 2014-07-07 20:45:41.588536459 +0200
-@@ -195,10 +195,17 @@ value_subscripted_rvalue (struct value *
+--- gdb-7.10.50.20151027.orig/gdb/valarith.c 2015-11-03 20:41:48.543504999 +0100
++++ gdb-7.10.50.20151027/gdb/valarith.c 2015-11-03 20:46:36.995238888 +0100
+@@ -193,10 +193,17 @@ value_subscripted_rvalue (struct value *
struct type *array_type = check_typedef (value_type (array));
struct type *elt_type = check_typedef (TYPE_TARGET_TYPE (array_type));
- unsigned int elt_size = TYPE_LENGTH (elt_type);
+ unsigned int elt_size = type_length_units (elt_type);
- unsigned int elt_offs = longest_to_int (index - lowerbound);
+ unsigned int elt_offs;
LONGEST elt_stride = TYPE_BYTE_STRIDE (TYPE_INDEX_TYPE (array_type));
struct value *v;
+ if (TYPE_NOT_ASSOCIATED (array_type))
-+ error (_("no such vector element because not associated"));
++ error (_("no such vector element (vector not associated)"));
+ if (TYPE_NOT_ALLOCATED (array_type))
-+ error (_("no such vector element because not allocated"));
++ error (_("no such vector element (vector not allocated)"));
+
+ elt_offs = longest_to_int (index - lowerbound);
+
if (elt_stride > 0)
elt_offs *= elt_stride;
else if (elt_stride < 0)
-@@ -212,14 +219,7 @@ value_subscripted_rvalue (struct value *
+@@ -210,14 +217,7 @@ value_subscripted_rvalue (struct value *
if (index < lowerbound || (!TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED (array_type)
- && elt_offs >= TYPE_LENGTH (array_type)))
+ && elt_offs >= type_length_units (array_type)))
- {
-- if (TYPE_NOT_ASSOCIATED (array_type))
-- error (_("no such vector element because not associated"));
-- else if (TYPE_NOT_ALLOCATED (array_type))
-- error (_("no such vector element because not allocated"));
+- if (type_not_associated (array_type))
+- error (_("no such vector element (vector not associated)"));
+- else if (type_not_allocated (array_type))
+- error (_("no such vector element (vector not allocated)"));
- else
- error (_("no such vector element"));
- }
diff --git a/gdb-vla-intel-stringbt-fix.patch b/gdb-vla-intel-stringbt-fix.patch
index 56ceff2..f6197f2 100644
--- a/gdb-vla-intel-stringbt-fix.patch
+++ b/gdb-vla-intel-stringbt-fix.patch
@@ -165,17 +165,3 @@ Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/dynamic-other-frame.f90
+ end interface
+ call foo ('hello')
+end
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-strings.exp
-===================================================================
---- gdb-7.9.50.20150520.orig/gdb/testsuite/gdb.fortran/vla-strings.exp 2015-05-31 16:14:04.167533854 +0200
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-strings.exp 2015-05-31 16:14:31.073718201 +0200
-@@ -33,9 +33,6 @@ gdb_continue_to_breakpoint "var_char-all
- gdb_test "print var_char" \
- " = \\(PTR TO -> \\( character\\*10 \\)\\) ${hex}" \
- "print var_char after allocated first time"
--gdb_test "print *var_char" \
-- " = '\\\\000\\\\000\\\\000\\\\000\\\\000\\\\000\\\\000\\\\000\\\\000\\\\000'" \
-- "print *var_char after allocated first time"
- gdb_test "whatis var_char" "type = PTR TO -> \\( character\\*10 \\)" \
- "whatis var_char first time"
- gdb_test "ptype var_char" "type = PTR TO -> \\( character\\*10 \\)" \
diff --git a/gdb-vla-intel.patch b/gdb-vla-intel.patch
index 85c0364..3361585 100644
--- a/gdb-vla-intel.patch
+++ b/gdb-vla-intel.patch
@@ -6,11 +6,11 @@ GIT snapshot:
commit 511bff520372ffc10fa2ff569c176bdf1e6e475d
-Index: gdb-7.9.50.20150520/gdb/c-valprint.c
+Index: gdb-7.10.50.20151027/gdb/c-valprint.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/c-valprint.c 2015-05-29 08:27:02.657717326 +0200
-+++ gdb-7.9.50.20150520/gdb/c-valprint.c 2015-05-29 08:27:06.253740209 +0200
-@@ -537,7 +537,16 @@ c_value_print (struct value *val, struct
+--- gdb-7.10.50.20151027.orig/gdb/c-valprint.c 2015-10-27 02:48:31.000000000 +0100
++++ gdb-7.10.50.20151027/gdb/c-valprint.c 2015-11-03 21:13:35.959339113 +0100
+@@ -642,7 +642,16 @@ c_value_print (struct value *val, struct
{
/* normal case */
fprintf_filtered (stream, "(");
@@ -28,11 +28,11 @@ Index: gdb-7.9.50.20150520/gdb/c-valprint.c
fprintf_filtered (stream, ") ");
}
}
-Index: gdb-7.9.50.20150520/gdb/dwarf2loc.h
+Index: gdb-7.10.50.20151027/gdb/dwarf2loc.h
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/dwarf2loc.h 2015-05-29 08:27:02.658717333 +0200
-+++ gdb-7.9.50.20150520/gdb/dwarf2loc.h 2015-05-29 08:27:06.253740209 +0200
-@@ -131,6 +131,11 @@ int dwarf2_evaluate_property (const stru
+--- gdb-7.10.50.20151027.orig/gdb/dwarf2loc.h 2015-10-27 02:48:31.000000000 +0100
++++ gdb-7.10.50.20151027/gdb/dwarf2loc.h 2015-11-03 20:41:48.533504941 +0100
+@@ -138,6 +138,11 @@ int dwarf2_evaluate_property (const stru
struct property_addr_info *addr_stack,
CORE_ADDR *value);
@@ -44,24 +44,31 @@ Index: gdb-7.9.50.20150520/gdb/dwarf2loc.h
/* A helper for the compiler interface that compiles a single dynamic
property to C code.
-Index: gdb-7.9.50.20150520/gdb/dwarf2read.c
+Index: gdb-7.10.50.20151027/gdb/dwarf2read.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/dwarf2read.c 2015-05-29 08:27:02.676717447 +0200
-+++ gdb-7.9.50.20150520/gdb/dwarf2read.c 2015-05-29 10:04:52.272600212 +0200
-@@ -1868,6 +1868,12 @@ static void process_cu_includes (void);
- static void check_producer (struct dwarf2_cu *cu);
+--- gdb-7.10.50.20151027.orig/gdb/dwarf2read.c 2015-10-27 02:48:31.000000000 +0100
++++ gdb-7.10.50.20151027/gdb/dwarf2read.c 2015-11-03 21:13:38.216349800 +0100
+@@ -1745,7 +1745,9 @@ static void read_signatured_type (struct
- static void free_line_header_voidp (void *arg);
-+
-+static int
-+attr_to_dynamic_prop (const struct attribute *attr, struct die_info *die,
-+ struct dwarf2_cu *cu, struct dynamic_prop *prop,
-+ const gdb_byte *additional_data, int additional_data_size);
-+
- \f
- /* Various complaints about symbol reading that don't abort the process. */
+ static int attr_to_dynamic_prop (const struct attribute *attr,
+ struct die_info *die, struct dwarf2_cu *cu,
+- struct dynamic_prop *prop);
++ struct dynamic_prop *prop,
++ const gdb_byte *additional_data,
++ int additional_data_size);
+
+ /* memory allocation interface */
+
+@@ -11420,7 +11422,7 @@ read_func_scope (struct die_info *die, s
+ {
+ newobj->static_link
+ = XOBNEW (&objfile->objfile_obstack, struct dynamic_prop);
+- attr_to_dynamic_prop (attr, die, cu, newobj->static_link);
++ attr_to_dynamic_prop (attr, die, cu, newobj->static_link, NULL, 0);
+ }
-@@ -14431,29 +14437,92 @@ read_tag_string_type (struct die_info *d
+ cu->list_in_scope = &local_symbols;
+@@ -14471,29 +14473,92 @@ read_tag_string_type (struct die_info *d
struct gdbarch *gdbarch = get_objfile_arch (objfile);
struct type *type, *range_type, *index_type, *char_type;
struct attribute *attr;
@@ -161,7 +168,7 @@ Index: gdb-7.9.50.20150520/gdb/dwarf2read.c
char_type = language_string_char_type (cu->language_defn, gdbarch);
type = create_string_type (NULL, char_type, range_type);
-@@ -14776,13 +14845,15 @@ read_base_type (struct die_info *die, st
+@@ -14816,13 +14881,15 @@ read_base_type (struct die_info *die, st
return set_die_type (die, type, cu);
}
@@ -178,8 +185,8 @@ Index: gdb-7.9.50.20150520/gdb/dwarf2read.c
{
struct dwarf2_property_baton *baton;
struct obstack *obstack = &cu->objfile->objfile_obstack;
-@@ -14795,8 +14866,25 @@ attr_to_dynamic_prop (const struct attri
- baton = obstack_alloc (obstack, sizeof (*baton));
+@@ -14835,8 +14902,25 @@ attr_to_dynamic_prop (const struct attri
+ baton = XOBNEW (obstack, struct dwarf2_property_baton);
baton->referenced_type = NULL;
baton->locexpr.per_cu = cu->per_cu;
- baton->locexpr.size = DW_BLOCK (attr)->size;
@@ -206,8 +213,8 @@ Index: gdb-7.9.50.20150520/gdb/dwarf2read.c
prop->data.baton = baton;
prop->kind = PROP_LOCEXPR;
gdb_assert (prop->data.baton != NULL);
-@@ -14832,8 +14920,28 @@ attr_to_dynamic_prop (const struct attri
- baton = obstack_alloc (obstack, sizeof (*baton));
+@@ -14872,8 +14956,28 @@ attr_to_dynamic_prop (const struct attri
+ baton = XOBNEW (obstack, struct dwarf2_property_baton);
baton->referenced_type = die_type (target_die, target_cu);
baton->locexpr.per_cu = cu->per_cu;
- baton->locexpr.size = DW_BLOCK (target_attr)->size;
@@ -237,7 +244,7 @@ Index: gdb-7.9.50.20150520/gdb/dwarf2read.c
prop->data.baton = baton;
prop->kind = PROP_LOCEXPR;
gdb_assert (prop->data.baton != NULL);
-@@ -14887,7 +14995,7 @@ read_subrange_type (struct die_info *die
+@@ -14927,7 +15031,7 @@ read_subrange_type (struct die_info *die
struct type *base_type, *orig_base_type;
struct type *range_type;
struct attribute *attr;
@@ -246,7 +253,7 @@ Index: gdb-7.9.50.20150520/gdb/dwarf2read.c
int low_default_is_valid;
int high_bound_is_count = 0;
const char *name;
-@@ -14907,7 +15015,9 @@ read_subrange_type (struct die_info *die
+@@ -14947,7 +15051,9 @@ read_subrange_type (struct die_info *die
low.kind = PROP_CONST;
high.kind = PROP_CONST;
@@ -256,7 +263,7 @@ Index: gdb-7.9.50.20150520/gdb/dwarf2read.c
/* Set LOW_DEFAULT_IS_VALID if current language and DWARF version allow
omitting DW_AT_lower_bound. */
-@@ -14940,19 +15050,26 @@ read_subrange_type (struct die_info *die
+@@ -14980,19 +15086,26 @@ read_subrange_type (struct die_info *die
break;
}
@@ -286,7 +293,7 @@ Index: gdb-7.9.50.20150520/gdb/dwarf2read.c
{
/* If bounds are constant do the final calculation here. */
if (low.kind == PROP_CONST && high.kind == PROP_CONST)
-@@ -15016,7 +15133,7 @@ read_subrange_type (struct die_info *die
+@@ -15056,7 +15169,7 @@ read_subrange_type (struct die_info *die
&& !TYPE_UNSIGNED (base_type) && (high.data.const_val & negative_mask))
high.data.const_val |= negative_mask;
@@ -295,38 +302,26 @@ Index: gdb-7.9.50.20150520/gdb/dwarf2read.c
if (high_bound_is_count)
TYPE_RANGE_DATA (range_type)->flag_upper_bound_is_count = 1;
-@@ -22128,9 +22245,37 @@ set_die_type (struct die_info *die, stru
- && !HAVE_GNAT_AUX_INFO (type))
- INIT_GNAT_SPECIFIC (type);
-
-+ /* Read DW_AT_allocated and set in type. */
-+ attr = dwarf2_attr (die, DW_AT_allocated, cu);
-+ if (attr_form_is_block (attr))
-+ {
-+ struct dynamic_prop prop;
-+
+@@ -22360,7 +22473,7 @@ set_die_type (struct die_info *die, stru
+ attr = dwarf2_attr (die, DW_AT_allocated, cu);
+ if (attr_form_is_block (attr))
+ {
+- if (attr_to_dynamic_prop (attr, die, cu, &prop))
+ if (attr_to_dynamic_prop (attr, die, cu, &prop, NULL, 0))
-+ {
-+ TYPE_ALLOCATED_PROP (type)
-+ = obstack_alloc (&objfile->objfile_obstack, sizeof (prop));
-+ *TYPE_ALLOCATED_PROP (type) = prop;
-+ }
-+ }
-+
-+ /* Read DW_AT_associated and set in type. */
-+ attr = dwarf2_attr (die, DW_AT_associated, cu);
-+ if (attr_form_is_block (attr))
-+ {
-+ struct dynamic_prop prop;
-+
+ add_dyn_prop (DYN_PROP_ALLOCATED, prop, type, objfile);
+ }
+ else if (attr != NULL)
+@@ -22375,7 +22488,7 @@ set_die_type (struct die_info *die, stru
+ attr = dwarf2_attr (die, DW_AT_associated, cu);
+ if (attr_form_is_block (attr))
+ {
+- if (attr_to_dynamic_prop (attr, die, cu, &prop))
+ if (attr_to_dynamic_prop (attr, die, cu, &prop, NULL, 0))
-+ {
-+ TYPE_ASSOCIATED_PROP (type)
-+ = obstack_alloc (&objfile->objfile_obstack, sizeof (prop));
-+ *TYPE_ASSOCIATED_PROP (type) = prop;
-+ }
-+ }
-+
+ add_dyn_prop (DYN_PROP_ASSOCIATED, prop, type, objfile);
+ }
+ else if (attr != NULL)
+@@ -22388,7 +22501,7 @@ set_die_type (struct die_info *die, stru
+
/* Read DW_AT_data_location and set in type. */
attr = dwarf2_attr (die, DW_AT_data_location, cu);
- if (attr_to_dynamic_prop (attr, die, cu, &prop))
@@ -334,22 +329,24 @@ Index: gdb-7.9.50.20150520/gdb/dwarf2read.c
add_dyn_prop (DYN_PROP_DATA_LOCATION, prop, type, objfile);
if (dwarf2_per_objfile->die_type_hash == NULL)
-Index: gdb-7.9.50.20150520/gdb/f-typeprint.c
+Index: gdb-7.10.50.20151027/gdb/f-typeprint.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/f-typeprint.c 2015-05-29 08:27:02.678717460 +0200
-+++ gdb-7.9.50.20150520/gdb/f-typeprint.c 2015-05-29 08:27:06.261740260 +0200
-@@ -30,6 +30,7 @@
- #include "gdbcore.h"
+--- gdb-7.10.50.20151027.orig/gdb/f-typeprint.c 2015-10-27 02:48:31.000000000 +0100
++++ gdb-7.10.50.20151027/gdb/f-typeprint.c 2015-11-03 21:13:35.707337920 +0100
+@@ -31,6 +31,7 @@
#include "target.h"
#include "f-lang.h"
+ #include "typeprint.h"
+#include "valprint.h"
#if 0 /* Currently unused. */
static void f_type_print_args (struct type *, struct ui_file *);
-@@ -53,6 +54,17 @@ f_print_type (struct type *type, const c
- enum type_code code;
- int demangled_args;
-
+@@ -64,6 +65,17 @@ f_print_type (struct type *type, const c
+ {
+ val_print_not_allocated (stream);
+ return;
++ }
++
+ if (TYPE_NOT_ASSOCIATED (type))
+ {
+ val_print_not_associated (stream);
@@ -359,73 +356,13 @@ Index: gdb-7.9.50.20150520/gdb/f-typeprint.c
+ {
+ val_print_not_allocated (stream);
+ return;
-+ }
-+
+ }
+
f_type_print_base (type, stream, show, level);
- code = TYPE_CODE (type);
- if ((varstring != NULL && *varstring != '\0')
-@@ -167,28 +179,36 @@ f_type_print_varspec_suffix (struct type
- if (arrayprint_recurse_level == 1)
- fprintf_filtered (stream, "(");
-
-- if (TYPE_CODE (TYPE_TARGET_TYPE (type)) == TYPE_CODE_ARRAY)
-- f_type_print_varspec_suffix (TYPE_TARGET_TYPE (type), stream, 0, 0, 0,
-- arrayprint_recurse_level);
--
-- lower_bound = f77_get_lowerbound (type);
-- if (lower_bound != 1) /* Not the default. */
-- fprintf_filtered (stream, "%d:", lower_bound);
--
-- /* Make sure that, if we have an assumed size array, we
-- print out a warning and print the upperbound as '*'. */
--
-- if (TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED (type))
-- fprintf_filtered (stream, "*");
-+ if (TYPE_NOT_ASSOCIATED (type))
-+ val_print_not_associated (stream);
-+ else if (TYPE_NOT_ALLOCATED (type))
-+ val_print_not_allocated (stream);
- else
-- {
-- upper_bound = f77_get_upperbound (type);
-- fprintf_filtered (stream, "%d", upper_bound);
-- }
--
-- if (TYPE_CODE (TYPE_TARGET_TYPE (type)) != TYPE_CODE_ARRAY)
-- f_type_print_varspec_suffix (TYPE_TARGET_TYPE (type), stream, 0, 0, 0,
-- arrayprint_recurse_level);
-+ {
-+
-+ if (TYPE_CODE (TYPE_TARGET_TYPE (type)) == TYPE_CODE_ARRAY)
-+ f_type_print_varspec_suffix (TYPE_TARGET_TYPE (type), stream, 0, 0, 0,
-+ arrayprint_recurse_level);
-+
-+ lower_bound = f77_get_lowerbound (type);
-+ if (lower_bound != 1) /* Not the default. */
-+ fprintf_filtered (stream, "%d:", lower_bound);
-+
-+ /* Make sure that, if we have an assumed size array, we
-+ print out a warning and print the upperbound as '*'. */
-+
-+ if (TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED (type))
-+ fprintf_filtered (stream, "*");
-+ else
-+ {
-+ upper_bound = f77_get_upperbound (type);
-+ fprintf_filtered (stream, "%d", upper_bound);
-+ }
-+
-+ if (TYPE_CODE (TYPE_TARGET_TYPE (type)) != TYPE_CODE_ARRAY)
-+ f_type_print_varspec_suffix (TYPE_TARGET_TYPE (type), stream, 0, 0, 0,
-+ arrayprint_recurse_level);
-+ }
- if (arrayprint_recurse_level == 1)
- fprintf_filtered (stream, ")");
- else
-Index: gdb-7.9.50.20150520/gdb/f-valprint.c
+Index: gdb-7.10.50.20151027/gdb/f-valprint.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/f-valprint.c 2015-05-29 08:26:49.567634019 +0200
-+++ gdb-7.9.50.20150520/gdb/f-valprint.c 2015-05-29 08:27:06.262740266 +0200
+--- gdb-7.10.50.20151027.orig/gdb/f-valprint.c 2015-10-27 02:48:31.000000000 +0100
++++ gdb-7.10.50.20151027/gdb/f-valprint.c 2015-11-03 21:13:35.959339113 +0100
@@ -36,8 +36,6 @@
extern void _initialize_f_valprint (void);
@@ -612,11 +549,11 @@ Index: gdb-7.9.50.20150520/gdb/f-valprint.c
if (index != TYPE_NFIELDS (type) - 1)
fputs_filtered (", ", stream);
}
-Index: gdb-7.9.50.20150520/gdb/gdbtypes.c
+Index: gdb-7.10.50.20151027/gdb/gdbtypes.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/gdbtypes.c 2015-05-29 08:27:02.683717492 +0200
-+++ gdb-7.9.50.20150520/gdb/gdbtypes.c 2015-05-29 10:54:36.236498749 +0200
-@@ -824,7 +824,8 @@ allocate_stub_method (struct type *type)
+--- gdb-7.10.50.20151027.orig/gdb/gdbtypes.c 2015-10-27 02:48:31.000000000 +0100
++++ gdb-7.10.50.20151027/gdb/gdbtypes.c 2015-11-03 21:13:38.683352011 +0100
+@@ -836,7 +836,8 @@ allocate_stub_method (struct type *type)
struct type *
create_range_type (struct type *result_type, struct type *index_type,
const struct dynamic_prop *low_bound,
@@ -626,7 +563,7 @@ Index: gdb-7.9.50.20150520/gdb/gdbtypes.c
{
if (result_type == NULL)
result_type = alloc_type_copy (index_type);
-@@ -839,6 +840,7 @@ create_range_type (struct type *result_t
+@@ -851,6 +852,7 @@ create_range_type (struct type *result_t
TYPE_ZALLOC (result_type, sizeof (struct range_bounds));
TYPE_RANGE_DATA (result_type)->low = *low_bound;
TYPE_RANGE_DATA (result_type)->high = *high_bound;
@@ -634,7 +571,7 @@ Index: gdb-7.9.50.20150520/gdb/gdbtypes.c
if (low_bound->kind == PROP_CONST && low_bound->data.const_val >= 0)
TYPE_UNSIGNED (result_type) = 1;
-@@ -867,7 +869,7 @@ struct type *
+@@ -879,7 +881,7 @@ struct type *
create_static_range_type (struct type *result_type, struct type *index_type,
LONGEST low_bound, LONGEST high_bound)
{
@@ -643,7 +580,7 @@ Index: gdb-7.9.50.20150520/gdb/gdbtypes.c
low.kind = PROP_CONST;
low.data.const_val = low_bound;
-@@ -875,7 +877,11 @@ create_static_range_type (struct type *r
+@@ -887,7 +889,11 @@ create_static_range_type (struct type *r
high.kind = PROP_CONST;
high.data.const_val = high_bound;
@@ -656,20 +593,16 @@ Index: gdb-7.9.50.20150520/gdb/gdbtypes.c
return result_type;
}
-@@ -1068,18 +1074,24 @@ create_array_type_with_stride (struct ty
-
- TYPE_CODE (result_type) = TYPE_CODE_ARRAY;
- TYPE_TARGET_TYPE (result_type) = element_type;
-- if (has_static_range (TYPE_RANGE_DATA (range_type)))
-+ if (has_static_range (TYPE_RANGE_DATA (range_type))
-+ && dwarf2_address_data_valid (result_type))
+@@ -1084,16 +1090,21 @@ create_array_type_with_stride (struct ty
+ && (!type_not_associated (result_type)
+ && !type_not_allocated (result_type)))
{
- LONGEST low_bound, high_bound;
+ LONGEST low_bound, high_bound, byte_stride;
if (get_discrete_bounds (range_type, &low_bound, &high_bound) < 0)
low_bound = high_bound = 0;
- CHECK_TYPEDEF (element_type);
+ element_type = check_typedef (element_type);
+
+ byte_stride = abs (TYPE_BYTE_STRIDE (range_type));
+
@@ -683,7 +616,7 @@ Index: gdb-7.9.50.20150520/gdb/gdbtypes.c
else if (bit_stride > 0)
TYPE_LENGTH (result_type) =
(bit_stride * (high_bound - low_bound + 1) + 7) / 8;
-@@ -1789,12 +1801,31 @@ stub_noname_complaint (void)
+@@ -1804,12 +1815,31 @@ stub_noname_complaint (void)
static int
is_dynamic_type_internal (struct type *type, int top_level)
{
@@ -715,7 +648,7 @@ Index: gdb-7.9.50.20150520/gdb/gdbtypes.c
/* Types that have a dynamic TYPE_DATA_LOCATION are considered
dynamic, even if the type itself is statically defined.
From a user's point of view, this may appear counter-intuitive;
-@@ -1823,11 +1854,19 @@ is_dynamic_type_internal (struct type *t
+@@ -1844,11 +1874,19 @@ is_dynamic_type_internal (struct type *t
{
gdb_assert (TYPE_NFIELDS (type) == 1);
@@ -738,7 +671,7 @@ Index: gdb-7.9.50.20150520/gdb/gdbtypes.c
}
case TYPE_CODE_STRUCT:
-@@ -1840,6 +1879,18 @@ is_dynamic_type_internal (struct type *t
+@@ -1861,6 +1899,18 @@ is_dynamic_type_internal (struct type *t
&& is_dynamic_type_internal (TYPE_FIELD_TYPE (type, i), 0))
return 1;
}
@@ -757,7 +690,7 @@ Index: gdb-7.9.50.20150520/gdb/gdbtypes.c
break;
}
-@@ -1869,7 +1920,8 @@ resolve_dynamic_range (struct type *dyn_
+@@ -1890,7 +1940,8 @@ resolve_dynamic_range (struct type *dyn_
struct type *static_range_type, *static_target_type;
const struct dynamic_prop *prop;
const struct dwarf2_locexpr_baton *baton;
@@ -767,12 +700,12 @@ Index: gdb-7.9.50.20150520/gdb/gdbtypes.c
gdb_assert (TYPE_CODE (dyn_range_type) == TYPE_CODE_RANGE);
-@@ -1901,12 +1953,19 @@ resolve_dynamic_range (struct type *dyn_
+@@ -1922,12 +1973,19 @@ resolve_dynamic_range (struct type *dyn_
high_bound.data.const_val = 0;
}
+ prop = &TYPE_RANGE_DATA (dyn_range_type)->stride;
-+ if (dwarf2_evaluate_property (prop, addr_stack, &value))
++ if (dwarf2_evaluate_property (prop, NULL, addr_stack, &value))
+ {
+ stride.kind = PROP_CONST;
+ stride.data.const_val = value;
@@ -790,103 +723,42 @@ Index: gdb-7.9.50.20150520/gdb/gdbtypes.c
TYPE_RANGE_DATA (static_range_type)->flag_bound_evaluated = 1;
return static_range_type;
}
-@@ -1923,23 +1982,47 @@ resolve_dynamic_array (struct type *type
- struct type *elt_type;
- struct type *range_type;
+@@ -1946,7 +2004,8 @@ resolve_dynamic_array (struct type *type
struct type *ary_dim;
-+ struct dynamic_prop *prop;
-+ struct type *copy = copy_type (type);
+ struct dynamic_prop *prop;
- gdb_assert (TYPE_CODE (type) == TYPE_CODE_ARRAY);
+ gdb_assert (TYPE_CODE (type) == TYPE_CODE_ARRAY
+ || TYPE_CODE (type) == TYPE_CODE_STRING);
- elt_type = type;
- range_type = check_typedef (TYPE_INDEX_TYPE (elt_type));
- range_type = resolve_dynamic_range (range_type, addr_stack);
+ type = copy_type (type);
+
+@@ -1971,13 +2030,18 @@ resolve_dynamic_array (struct type *type
-+ prop = TYPE_ALLOCATED_PROP (type);
-+ if (dwarf2_evaluate_property (prop, addr_stack, &value))
-+ {
-+ TYPE_ALLOCATED_PROP (copy)->kind = PROP_CONST;
-+ TYPE_ALLOCATED_PROP (copy)->data.const_val = value;
-+ }
-+
-+ prop = TYPE_ASSOCIATED_PROP (type);
-+ if (dwarf2_evaluate_property (prop, addr_stack, &value))
-+ {
-+ TYPE_ASSOCIATED_PROP (copy)->kind = PROP_CONST;
-+ TYPE_ASSOCIATED_PROP (copy)->data.const_val = value;
-+ }
-+
ary_dim = check_typedef (TYPE_TARGET_TYPE (elt_type));
- if (ary_dim != NULL && TYPE_CODE (ary_dim) == TYPE_CODE_ARRAY)
-- elt_type = resolve_dynamic_array (TYPE_TARGET_TYPE (type), addr_stack);
+ if (ary_dim != NULL && (TYPE_CODE (ary_dim) == TYPE_CODE_ARRAY
-+ || TYPE_CODE (ary_dim) == TYPE_CODE_STRING))
-+ elt_type = resolve_dynamic_array (TYPE_TARGET_TYPE (copy), addr_stack);
++ || TYPE_CODE (ary_dim) == TYPE_CODE_STRING))
+ elt_type = resolve_dynamic_array (ary_dim, addr_stack);
else
elt_type = TYPE_TARGET_TYPE (type);
-- return create_array_type_with_stride (copy_type (type),
-- elt_type, range_type,
-- TYPE_FIELD_BITSIZE (type, 0));
+- return create_array_type_with_stride (type, elt_type, range_type,
+- TYPE_FIELD_BITSIZE (type, 0));
+ if (TYPE_CODE (type) == TYPE_CODE_STRING
+ && TYPE_FIELD_BITSIZE (type, 0) == 0)
-+ return create_string_type (copy,
-+ elt_type,
-+ range_type);
++ return create_string_type (type, elt_type, range_type);
+ else
-+ return create_array_type_with_stride (copy,
-+ elt_type,
-+ range_type, TYPE_FIELD_BITSIZE (type, 0));
++ return create_array_type_with_stride (type, elt_type, range_type,
++ TYPE_FIELD_BITSIZE (type, 0));
}
/* Resolve dynamic bounds of members of the union TYPE to static
-@@ -4453,6 +4536,20 @@ copy_type_recursive (struct objfile *obj
- TYPE_DYN_PROP_LIST (type));
-
-
-+ /* Copy allocated information. */
-+ if (TYPE_ALLOCATED_PROP (type) != NULL)
-+ {
-+ TYPE_ALLOCATED_PROP (new_type) = xmalloc (sizeof (struct dynamic_prop));
-+ *TYPE_ALLOCATED_PROP (new_type) = *TYPE_ALLOCATED_PROP (type);
-+ }
-+
-+ /* Copy associated information. */
-+ if (TYPE_ASSOCIATED_PROP (type) != NULL)
-+ {
-+ TYPE_ASSOCIATED_PROP (new_type) = xmalloc (sizeof (struct dynamic_prop));
-+ *TYPE_ASSOCIATED_PROP (new_type) = *TYPE_ASSOCIATED_PROP (type);
-+ }
-+
- /* Copy pointers to other types. */
- if (TYPE_TARGET_TYPE (type))
- TYPE_TARGET_TYPE (new_type) =
-@@ -4494,6 +4591,35 @@ copy_type_recursive (struct objfile *obj
+@@ -4558,6 +4622,17 @@ copy_type_recursive (struct objfile *obj
gdb_assert_not_reached ("bad type_specific_kind");
}
-+ if (TYPE_ALLOCATED_PROP (type))
-+ {
-+ TYPE_ALLOCATED_PROP (new_type)
-+ = OBSTACK_ZALLOC (&TYPE_OWNER (type).objfile->objfile_obstack,
-+ struct dynamic_prop);
-+ memcpy (TYPE_ALLOCATED_PROP (new_type), TYPE_ALLOCATED_PROP (type),
-+ sizeof (struct dynamic_prop));
-+ }
-+
-+ if (TYPE_ASSOCIATED_PROP (type))
-+ {
-+ TYPE_ASSOCIATED_PROP (new_type)
-+ = OBSTACK_ZALLOC (&TYPE_OWNER (type).objfile->objfile_obstack,
-+ struct dynamic_prop);
-+ memcpy (TYPE_ASSOCIATED_PROP (new_type), TYPE_ASSOCIATED_PROP (type),
-+ sizeof (struct dynamic_prop));
-+ }
-+
+ if (TYPE_NFIELDS (type))
+ {
+ int nfields = TYPE_NFIELDS (type);
@@ -901,26 +773,11 @@ Index: gdb-7.9.50.20150520/gdb/gdbtypes.c
return new_type;
}
-@@ -4519,6 +4645,14 @@ copy_type (const struct type *type)
- TYPE_DYN_PROP_LIST (new_type)
- = copy_dynamic_prop_list (&TYPE_OBJFILE (type) -> objfile_obstack,
- TYPE_DYN_PROP_LIST (type));
-+ if (TYPE_ALLOCATED_PROP (type) != NULL)
-+ TYPE_ALLOCATED_PROP (new_type) = obstack_copy
-+ (&TYPE_OBJFILE (type)->objfile_obstack, TYPE_ALLOCATED_PROP (type),
-+ sizeof (*TYPE_ALLOCATED_PROP (type)));
-+ if (TYPE_ASSOCIATED_PROP (type) != NULL)
-+ TYPE_ASSOCIATED_PROP (new_type) = obstack_copy
-+ (&TYPE_OBJFILE (type)->objfile_obstack, TYPE_ASSOCIATED_PROP (type),
-+ sizeof (*TYPE_ASSOCIATED_PROP (type)));
-
- return new_type;
- }
-Index: gdb-7.9.50.20150520/gdb/gdbtypes.h
+Index: gdb-7.10.50.20151027/gdb/gdbtypes.h
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/gdbtypes.h 2015-05-29 08:27:02.685717504 +0200
-+++ gdb-7.9.50.20150520/gdb/gdbtypes.h 2015-05-29 08:46:08.862924052 +0200
-@@ -569,6 +569,10 @@ struct range_bounds
+--- gdb-7.10.50.20151027.orig/gdb/gdbtypes.h 2015-10-27 02:48:31.000000000 +0100
++++ gdb-7.10.50.20151027/gdb/gdbtypes.h 2015-11-03 21:13:36.760342906 +0100
+@@ -577,6 +577,10 @@ struct range_bounds
struct dynamic_prop high;
@@ -931,7 +788,7 @@ Index: gdb-7.9.50.20150520/gdb/gdbtypes.h
/* True if HIGH range bound contains the number of elements in the
subrange. This affects how the final hight bound is computed. */
-@@ -741,6 +745,18 @@ struct main_type
+@@ -749,6 +753,18 @@ struct main_type
/* * Contains all dynamic type properties. */
struct dynamic_prop_list *dyn_prop_list;
@@ -966,13 +823,10 @@ Index: gdb-7.9.50.20150520/gdb/gdbtypes.h
/* Property accessors for the type data location. */
#define TYPE_DATA_LOCATION(thistype) \
-@@ -1265,6 +1290,20 @@ extern void allocate_gnat_aux_type (stru
- TYPE_DATA_LOCATION (thistype)->data.const_val
+@@ -1266,6 +1291,18 @@ extern void allocate_gnat_aux_type (stru
#define TYPE_DATA_LOCATION_KIND(thistype) \
TYPE_DATA_LOCATION (thistype)->kind
-+#define TYPE_ALLOCATED_PROP(thistype) TYPE_MAIN_TYPE(thistype)->allocated
-+#define TYPE_ASSOCIATED_PROP(thistype) TYPE_MAIN_TYPE(thistype)->associated
-+
+
+/* Allocated status of type object. If set to non-zero it means the object
+ is allocated. A zero value means it is not allocated. */
+#define TYPE_NOT_ALLOCATED(t) (TYPE_ALLOCATED_PROP (t) \
@@ -984,10 +838,11 @@ Index: gdb-7.9.50.20150520/gdb/gdbtypes.h
+#define TYPE_NOT_ASSOCIATED(t) (TYPE_ASSOCIATED_PROP (t) \
+ && TYPE_ASSOCIATED_PROP (t)->kind == PROP_CONST \
+ && !TYPE_ASSOCIATED_PROP (t)->data.const_val)
-
- /* Attribute accessors for dynamic properties. */
- #define TYPE_DYN_PROP_LIST(thistype) \
-@@ -1283,6 +1322,9 @@ extern void allocate_gnat_aux_type (stru
++
+ /* Property accessors for the type allocated/associated. */
+ #define TYPE_ALLOCATED_PROP(thistype) \
+ get_dyn_prop (DYN_PROP_ALLOCATED, thistype)
+@@ -1289,6 +1326,9 @@ extern void allocate_gnat_aux_type (stru
TYPE_HIGH_BOUND_UNDEFINED(TYPE_INDEX_TYPE(arraytype))
#define TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED(arraytype) \
TYPE_LOW_BOUND_UNDEFINED(TYPE_INDEX_TYPE(arraytype))
@@ -997,7 +852,7 @@ Index: gdb-7.9.50.20150520/gdb/gdbtypes.h
#define TYPE_ARRAY_UPPER_BOUND_VALUE(arraytype) \
(TYPE_HIGH_BOUND(TYPE_INDEX_TYPE((arraytype))))
-@@ -1764,6 +1806,7 @@ extern struct type *create_array_type_wi
+@@ -1775,6 +1815,7 @@ extern struct type *create_array_type_wi
extern struct type *create_range_type (struct type *, struct type *,
const struct dynamic_prop *,
@@ -1005,223 +860,10 @@ Index: gdb-7.9.50.20150520/gdb/gdbtypes.h
const struct dynamic_prop *);
extern struct type *create_array_type (struct type *, struct type *,
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-alloc-assoc.exp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-alloc-assoc.exp 2015-05-29 08:27:06.266740292 +0200
-@@ -0,0 +1,65 @@
-+# Copyright 2014 Free Software Foundation, Inc.
-+
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 3 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program. If not, see <http://www.gnu.org/licenses/>.
-+
-+standard_testfile "vla.f90"
-+
-+if { [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} \
-+ {debug f90 quiet}] } {
-+ return -1
-+}
-+
-+if ![runto MAIN__] then {
-+ perror "couldn't run to breakpoint MAIN__"
-+ continue
-+}
-+
-+# Check the association status of various types of VLA's
-+# and pointer to VLA's.
-+gdb_breakpoint [gdb_get_line_number "vla1-allocated"]
-+gdb_continue_to_breakpoint "vla1-allocated"
-+gdb_test "print l" " = \\.TRUE\\." \
-+ "print vla1 allocation status (allocated)"
-+
-+gdb_breakpoint [gdb_get_line_number "vla2-allocated"]
-+gdb_continue_to_breakpoint "vla2-allocated"
-+gdb_test "print l" " = \\.TRUE\\." \
-+ "print vla2 allocation status (allocated)"
-+
-+gdb_breakpoint [gdb_get_line_number "pvla-associated"]
-+gdb_continue_to_breakpoint "pvla-associated"
-+gdb_test "print l" " = \\.TRUE\\." \
-+ "print pvla associated status (associated)"
-+
-+gdb_breakpoint [gdb_get_line_number "pvla-re-associated"]
-+gdb_continue_to_breakpoint "pvla-re-associated"
-+gdb_test "print l" " = \\.TRUE\\." \
-+ "print pvla associated status (re-associated)"
-+
-+gdb_breakpoint [gdb_get_line_number "pvla-deassociated"]
-+gdb_continue_to_breakpoint "pvla-deassociated"
-+gdb_test "print l" " = \\.FALSE\\." \
-+ "print pvla allocation status (deassociated)"
-+
-+gdb_breakpoint [gdb_get_line_number "vla1-deallocated"]
-+gdb_continue_to_breakpoint "vla1-deallocated"
-+gdb_test "print l" " = \\.FALSE\\." \
-+ "print vla1 allocation status (deallocated)"
-+gdb_test "print vla1" " = <not allocated>" \
-+ "print deallocated vla1"
-+
-+gdb_breakpoint [gdb_get_line_number "vla2-deallocated"]
-+gdb_continue_to_breakpoint "vla2-deallocated"
-+gdb_test "print l" " = \\.FALSE\\." "print vla2 deallocated"
-+gdb_test "print vla2" " = <not allocated>" "print deallocated vla2"
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-datatypes.exp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-datatypes.exp 2015-05-29 08:27:06.266740292 +0200
-@@ -0,0 +1,82 @@
-+# Copyright 2014 Free Software Foundation, Inc.
-+
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 3 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program. If not, see <http://www.gnu.org/licenses/>.
-+
-+standard_testfile ".f90"
-+
-+if { [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} \
-+ {debug f90 quiet}] } {
-+ return -1
-+}
-+
-+# check that all fortran standard datatypes will be
-+# handled correctly when using as VLA's
-+
-+if ![runto MAIN__] then {
-+ perror "couldn't run to breakpoint MAIN__"
-+ continue
-+}
-+
-+gdb_breakpoint [gdb_get_line_number "vlas-allocated"]
-+gdb_continue_to_breakpoint "vlas-allocated"
-+gdb_test "next" " = allocated\\\(realvla\\\)" \
-+ "next to allocation status of intvla"
-+gdb_test "print l" " = \\.TRUE\\." "intvla allocated"
-+gdb_test "next" " = allocated\\\(complexvla\\\)" \
-+ "next to allocation status of realvla"
-+gdb_test "print l" " = \\.TRUE\\." "realvla allocated"
-+gdb_test "next" " = allocated\\\(logicalvla\\\)" \
-+ "next to allocation status of complexvla"
-+gdb_test "print l" " = \\.TRUE\\." "complexvla allocated"
-+gdb_test "next" " = allocated\\\(charactervla\\\)" \
-+ "next to allocation status of logicalvla"
-+gdb_test "print l" " = \\.TRUE\\." "logicalvla allocated"
-+gdb_test "next" "intvla\\\(:,:,:\\\) = 1" \
-+ "next to allocation status of charactervla"
-+gdb_test "print l" " = \\.TRUE\\." "charactervla allocated"
-+
-+gdb_breakpoint [gdb_get_line_number "vlas-initialized"]
-+gdb_continue_to_breakpoint "vlas-initialized"
-+gdb_test "ptype intvla" "type = integer\\\(kind=4\\\) \\\(11,22,33\\\)" \
-+ "ptype intvla"
-+gdb_test "ptype realvla" "type = real\\\(kind=4\\\) \\\(11,22,33\\\)" \
-+ "ptype realvla"
-+gdb_test "ptype complexvla" "type = complex\\\(kind=4\\\) \\\(11,22,33\\\)" \
-+ "ptype complexvla"
-+gdb_test "ptype logicalvla" "type = logical\\\(kind=4\\\) \\\(11,22,33\\\)" \
-+ "ptype logicalvla"
-+gdb_test "ptype charactervla" "type = character\\\*1 \\\(11,22,33\\\)" \
-+ "ptype charactervla"
-+
-+gdb_test "print intvla(5,5,5)" " = 1" "print intvla(5,5,5) (1st)"
-+gdb_test "print realvla(5,5,5)" " = 3.14\\d+" \
-+ "print realvla(5,5,5) (1st)"
-+gdb_test "print complexvla(5,5,5)" " = \\\(2,-3\\\)" \
-+ "print complexvla(5,5,5) (1st)"
-+gdb_test "print logicalvla(5,5,5)" " = \\.TRUE\\." \
-+ "print logicalvla(5,5,5) (1st)"
-+gdb_test "print charactervla(5,5,5)" " = 'K'" \
-+ "print charactervla(5,5,5) (1st)"
-+
-+gdb_breakpoint [gdb_get_line_number "vlas-modified"]
-+gdb_continue_to_breakpoint "vlas-modified"
-+gdb_test "print intvla(5,5,5)" " = 42" "print intvla(5,5,5) (2nd)"
-+gdb_test "print realvla(5,5,5)" " = 4.13\\d+" \
-+ "print realvla(5,5,5) (2nd)"
-+gdb_test "print complexvla(5,5,5)" " = \\\(-3,2\\\)" \
-+ "print complexvla(5,5,5) (2nd)"
-+gdb_test "print logicalvla(5,5,5)" " = \\.FALSE\\." \
-+ "print logicalvla(5,5,5) (2nd)"
-+gdb_test "print charactervla(5,5,5)" " = 'X'" \
-+ "print charactervla(5,5,5) (2nd)"
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-datatypes.f90
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-datatypes.f90 2015-05-29 08:27:06.266740292 +0200
-@@ -0,0 +1,51 @@
-+! Copyright 2014 Free Software Foundation, Inc.
-+!
-+! This program is free software; you can redistribute it and/or modify
-+! it under the terms of the GNU General Public License as published by
-+! the Free Software Foundation; either version 2 of the License, or
-+! (at your option) any later version.
-+!
-+! This program is distributed in the hope that it will be useful,
-+! but WITHOUT ANY WARRANTY; without even the implied warranty of
-+! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+! GNU General Public License for more details.
-+!
-+! You should have received a copy of the GNU General Public License
-+! along with this program; if not, write to the Free Software
-+! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+
-+program vla_primitives
-+ integer, allocatable :: intvla(:, :, :)
-+ real, allocatable :: realvla(:, :, :)
-+ complex, allocatable :: complexvla(:, :, :)
-+ logical, allocatable :: logicalvla(:, :, :)
-+ character, allocatable :: charactervla(:, :, :)
-+ logical :: l
-+
-+ allocate (intvla (11,22,33))
-+ allocate (realvla (11,22,33))
-+ allocate (complexvla (11,22,33))
-+ allocate (logicalvla (11,22,33))
-+ allocate (charactervla (11,22,33))
-+
-+ l = allocated(intvla) ! vlas-allocated
-+ l = allocated(realvla)
-+ l = allocated(complexvla)
-+ l = allocated(logicalvla)
-+ l = allocated(charactervla)
-+
-+ intvla(:,:,:) = 1
-+ realvla(:,:,:) = 3.14
-+ complexvla(:,:,:) = cmplx(2.0,-3.0)
-+ logicalvla(:,:,:) = .TRUE.
-+ charactervla(:,:,:) = char(75)
-+
-+ intvla(5,5,5) = 42 ! vlas-initialized
-+ realvla(5,5,5) = 4.13
-+ complexvla(5,5,5) = cmplx(-3.0,2.0)
-+ logicalvla(5,5,5) = .FALSE.
-+ charactervla(5,5,5) = 'X'
-+
-+ ! dummy statement for bp
-+ l = .FALSE. ! vlas-modified
-+end program vla_primitives
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-func.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/vla-func.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-func.exp 2015-05-29 08:27:06.266740292 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/vla-func.exp 2015-11-03 20:41:48.542504993 +0100
@@ -0,0 +1,61 @@
+# Copyright 2014 Free Software Foundation, Inc.
+
@@ -1284,10 +926,10 @@ Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-func.exp
+ "print vla3 (after func2)"
+gdb_test "ptype vla3" "type = integer\\\(kind=4\\\) \\\(10\\\)" \
+ "ptype vla3 (after func2)"
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-func.f90
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/vla-func.f90
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-func.f90 2015-05-29 08:27:06.267740298 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/vla-func.f90 2015-11-03 20:41:48.542504993 +0100
@@ -0,0 +1,71 @@
+! Copyright 2014 Free Software Foundation, Inc.
+!
@@ -1360,11 +1002,11 @@ Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-func.f90
+
+ ret = .TRUE. ! func2-returned
+end program vla_func
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-history.exp
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/vla-stride.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-history.exp 2015-05-29 08:27:06.267740298 +0200
-@@ -0,0 +1,62 @@
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/vla-stride.exp 2015-11-03 20:41:48.542504993 +0100
+@@ -0,0 +1,44 @@
+# Copyright 2014 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
@@ -1380,7 +1022,7 @@ Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-history.exp
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
-+standard_testfile "vla.f90"
++standard_testfile ".f90"
+
+if { [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} \
+ {debug f90 quiet}] } {
@@ -1392,239 +1034,63 @@ Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-history.exp
+ continue
+}
+
-+# Set some breakpoints and print complete vla.
-+gdb_breakpoint [gdb_get_line_number "vla1-init"]
-+gdb_continue_to_breakpoint "vla1-init"
-+gdb_test "print vla1" " = <not allocated>" "print non-allocated vla1"
-+
-+gdb_breakpoint [gdb_get_line_number "vla2-allocated"]
-+gdb_continue_to_breakpoint "vla2-allocated"
-+gdb_test "print vla1" " = \\( *\\( *\\( *0, *0, *0,\[()0, .\]*\\)" \
-+ "print vla1 allocated"
-+gdb_test "print vla2" " = \\( *\\( *\\( *0, *0, *0,\[()0, .\]*\\)" \
-+ "print vla2 allocated"
-+
-+gdb_breakpoint [gdb_get_line_number "vla1-filled"]
-+gdb_continue_to_breakpoint "vla1-filled"
-+gdb_test "print vla1" \
-+ " = \\( *\\( *\\( *1311, *1311, *1311,\[()1311, .\]*\\)" \
-+ "print vla1 filled"
-+
-+# Try to access history values for full vla prints.
-+gdb_test "print \$1" " = <not allocated>" "print \$1"
-+gdb_test "print \$2" " = \\( *\\( *\\( *0, *0, *0,\[()0, .\]*\\)" \
-+ "print \$2"
-+gdb_test "print \$3" " = \\( *\\( *\\( *0, *0, *0,\[()0, .\]*\\)" \
-+ "print \$3"
-+gdb_test "print \$4" \
-+ " = \\( *\\( *\\( *1311, *1311, *1311,\[()1311, .\]*\\)" "print \$4"
-+
-+gdb_breakpoint [gdb_get_line_number "vla2-filled"]
-+gdb_continue_to_breakpoint "vla2-filled"
-+gdb_test "print vla2(1,43,20)" " = 1311" "print vla2(1,43,20)"
-+gdb_test "print vla1(1,3,8)" " = 1001" "print vla2(1,3,8)"
-+
-+# Try to access history values for vla values.
-+gdb_test "print \$9" " = 1311" "print \$9"
-+gdb_test "print \$10" " = 1001" "print \$10"
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-ptype-sub.exp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-ptype-sub.exp 2015-05-29 08:27:06.267740298 +0200
-@@ -0,0 +1,87 @@
-+# Copyright 2014 Free Software Foundation, Inc.
-+
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 3 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program. If not, see <http://www.gnu.org/licenses/>.
-+
-+standard_testfile "vla-sub.f90"
-+
-+if { [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} \
-+ {debug f90 quiet}] } {
-+ return -1
-+}
++gdb_breakpoint [gdb_get_line_number "re-reverse-elements"]
++gdb_continue_to_breakpoint "re-reverse-elements"
++gdb_test "print pvla" " = \\\(1, 2, 3, 4, 5, 6, 7, 8, 9, 10\\\)" \
++ "print re-reverse-elements"
++gdb_test "print pvla(1)" " = 1" "print first re-reverse-element"
++gdb_test "print pvla(10)" " = 10" "print last re-reverse-element"
+
-+if ![runto MAIN__] then {
-+ perror "couldn't run to breakpoint MAIN__"
-+ continue
-+}
++gdb_breakpoint [gdb_get_line_number "odd-elements"]
++gdb_continue_to_breakpoint "odd-elements"
++gdb_test "print pvla" " = \\\(1, 3, 5, 7, 9\\\)" "print odd-elements"
++gdb_test "print pvla(1)" " = 1" "print first odd-element"
++gdb_test "print pvla(5)" " = 9" "print last odd-element"
+
-+# Pass fixed array to function and handle them as vla in function.
-+gdb_breakpoint [gdb_get_line_number "not-filled"]
-+gdb_continue_to_breakpoint "not-filled (1st)"
-+gdb_test "ptype array1" "type = integer\\\(kind=4\\\) \\\(42,42\\\)" \
-+ "ptype array1 (passed fixed)"
-+gdb_test "ptype array2" "type = real\\\(kind=4\\\) \\\(42,42,42\\\)" \
-+ "ptype array2 (passed fixed)"
-+gdb_test "ptype array1(40, 10)" "type = integer\\\(kind=4\\\)" \
-+ "ptype array1(40, 10) (passed fixed)"
-+gdb_test "ptype array2(13, 11, 5)" "type = real\\\(kind=4\\\)" \
-+ "ptype array2(13, 11, 5) (passed fixed)"
-+
-+# Pass sub arrays to function and handle them as vla in function.
-+gdb_continue_to_breakpoint "not-filled (2nd)"
-+gdb_test "ptype array1" "type = integer\\\(kind=4\\\) \\\(6,6\\\)" \
-+ "ptype array1 (passed sub-array)"
-+gdb_test "ptype array2" "type = real\\\(kind=4\\\) \\\(6,6,6\\\)" \
-+ "ptype array2 (passed sub-array)"
-+gdb_test "ptype array1(3, 3)" "type = integer\\\(kind=4\\\)" \
-+ "ptype array1(3, 3) (passed sub-array)"
-+gdb_test "ptype array2(4, 4, 4)" "type = real\\\(kind=4\\\)" \
-+ "ptype array2(4, 4, 4) (passed sub-array)"
-+
-+# Check ptype outside of bounds. This should not crash GDB.
-+gdb_test "ptype array1(100, 100)" "no such vector element" \
-+ "ptype array1(100, 100) subarray do not crash (passed sub-array)"
-+gdb_test "ptype array2(100, 100, 100)" "no such vector element" \
-+ "ptype array2(100, 100, 100) subarray do not crash (passed sub-array)"
-+
-+# Pass vla to function.
-+gdb_continue_to_breakpoint "not-filled (3rd)"
-+gdb_test "ptype array1" "type = integer\\\(kind=4\\\) \\\(20,20\\\)" \
-+ "ptype array1 (passed vla)"
-+gdb_test "ptype array2" "type = real\\\(kind=4\\\) \\\(10,10,10\\\)" \
-+ "ptype array2 (passed vla)"
-+gdb_test "ptype array1(3, 3)" "type = integer\\\(kind=4\\\)" \
-+ "ptype array1(3, 3) (passed vla)"
-+gdb_test "ptype array2(4, 4, 4)" "type = real\\\(kind=4\\\)" \
-+ "ptype array2(4, 4, 4) (passed vla)"
-+
-+# Check ptype outside of bounds. This should not crash GDB.
-+gdb_test "ptype array1(100, 100)" "no such vector element" \
-+ "ptype array1(100, 100) VLA do not crash (passed vla)"
-+gdb_test "ptype array2(100, 100, 100)" "no such vector element" \
-+ "ptype array2(100, 100, 100) VLA do not crash (passed vla)"
-+
-+# Pass fixed array to function and handle it as VLA of arbitrary length in
-+# function.
-+gdb_breakpoint [gdb_get_line_number "end-of-bar"]
-+gdb_continue_to_breakpoint "end-of-bar"
-+gdb_test "ptype array1" \
-+ "type = (PTR TO -> \\( )?integer(\\(kind=4\\)|\\*4) \\(\\*\\)\\)?" \
-+ "ptype array1 (arbitrary length)"
-+gdb_test "ptype array2" \
-+ "type = (PTR TO -> \\( )?integer(\\(kind=4\\)|\\*4) \\(4:9,10:\\*\\)\\)?" \
-+ "ptype array2 (arbitrary length)"
-+gdb_test "ptype array1(100)" "type = integer\\\(kind=4\\\)" \
-+ "ptype array1(100) (arbitrary length)"
-+gdb_test "ptype array2(4,100)" "type = integer\\\(kind=4\\\)" \
-+ "ptype array2(4,100) (arbitrary length)"
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-ptype.exp
++gdb_breakpoint [gdb_get_line_number "single-element"]
++gdb_continue_to_breakpoint "single-element"
++gdb_test "print pvla" " = \\\(5\\\)" "print single-element"
++gdb_test "print pvla(1)" " = 5" "print one single-element"
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/vla-stride.f90
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-ptype.exp 2015-05-29 08:27:06.267740298 +0200
-@@ -0,0 +1,96 @@
-+# Copyright 2014 Free Software Foundation, Inc.
-+
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 3 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program. If not, see <http://www.gnu.org/licenses/>.
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/vla-stride.f90 2015-11-03 20:41:48.543504999 +0100
+@@ -0,0 +1,30 @@
++! Copyright 2014 Free Software Foundation, Inc.
++!
++! This program is free software; you can redistribute it and/or modify
++! it under the terms of the GNU General Public License as published by
++! the Free Software Foundation; either version 2 of the License, or
++! (at your option) any later version.
++!
++! This program is distributed in the hope that it will be useful,
++! but WITHOUT ANY WARRANTY; without even the implied warranty of
++! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++! GNU General Public License for more details.
++!
++! You should have received a copy of the GNU General Public License
++! along with this program; if not, write to the Free Software
++! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
-+standard_testfile "vla.f90"
++program vla_stride
++ integer, target, allocatable :: vla (:)
++ integer, pointer :: pvla (:)
+
-+if { [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} \
-+ {debug f90 quiet}] } {
-+ return -1
-+}
++ allocate(vla(10))
++ vla = (/ (I, I = 1,10) /)
+
-+if ![runto MAIN__] then {
-+ perror "couldn't run to breakpoint MAIN__"
-+ continue
-+}
++ pvla => vla(10:1:-1)
++ pvla => pvla(10:1:-1)
++ pvla => vla(1:10:2) ! re-reverse-elements
++ pvla => vla(5:4:-2) ! odd-elements
+
-+# Check the ptype of various VLA states and pointer to VLA's.
-+gdb_breakpoint [gdb_get_line_number "vla1-init"]
-+gdb_continue_to_breakpoint "vla1-init"
-+gdb_test "ptype vla1" "type = <not allocated>" "ptype vla1 not initialized"
-+gdb_test "ptype vla2" "type = <not allocated>" "ptype vla2 not initialized"
-+gdb_test "ptype pvla" "type = <not associated>" "ptype pvla not initialized"
-+gdb_test "ptype vla1(3, 6, 9)" "no such vector element because not allocated" \
-+ "ptype vla1(3, 6, 9) not initialized"
-+gdb_test "ptype vla2(5, 45, 20)" \
-+ "no such vector element because not allocated" \
-+ "ptype vla1(5, 45, 20) not initialized"
-+
-+gdb_breakpoint [gdb_get_line_number "vla1-allocated"]
-+gdb_continue_to_breakpoint "vla1-allocated"
-+gdb_test "ptype vla1" "type = real\\\(kind=4\\\) \\\(10,10,10\\\)" \
-+ "ptype vla1 allocated"
-+
-+gdb_breakpoint [gdb_get_line_number "vla2-allocated"]
-+gdb_continue_to_breakpoint "vla2-allocated"
-+gdb_test "ptype vla2" "type = real\\\(kind=4\\\) \\\(7,42:50,13:35\\\)" \
-+ "ptype vla2 allocated"
-+
-+gdb_breakpoint [gdb_get_line_number "vla1-filled"]
-+gdb_continue_to_breakpoint "vla1-filled"
-+gdb_test "ptype vla1" "type = real\\\(kind=4\\\) \\\(10,10,10\\\)" \
-+ "ptype vla1 filled"
-+gdb_test "ptype vla1(3, 6, 9)" "type = real\\\(kind=4\\\)" \
-+ "ptype vla1(3, 6, 9)"
-+
-+gdb_breakpoint [gdb_get_line_number "vla2-filled"]
-+gdb_continue_to_breakpoint "vla2-filled"
-+gdb_test "ptype vla2" "type = real\\\(kind=4\\\) \\\(7,42:50,13:35\\\)" \
-+ "ptype vla2 filled"
-+gdb_test "ptype vla2(5, 45, 20)" "type = real\\\(kind=4\\\)" \
-+ "ptype vla1(5, 45, 20) filled"
-+
-+gdb_breakpoint [gdb_get_line_number "pvla-associated"]
-+gdb_continue_to_breakpoint "pvla-associated"
-+gdb_test "ptype pvla" "type = real\\\(kind=4\\\) \\\(10,10,10\\\)" \
-+ "ptype pvla associated"
-+gdb_test "ptype pvla(3, 6, 9)" "type = real\\\(kind=4\\\)" \
-+ "ptype pvla(3, 6, 9)"
-+
-+gdb_breakpoint [gdb_get_line_number "pvla-re-associated"]
-+gdb_continue_to_breakpoint "pvla-re-associated"
-+gdb_test "ptype pvla" "type = real\\\(kind=4\\\) \\\(7,42:50,13:35\\\)" \
-+ "ptype pvla re-associated"
-+gdb_test "ptype vla2(5, 45, 20)" "type = real\\\(kind=4\\\)" \
-+ "ptype vla1(5, 45, 20) re-associated"
-+
-+gdb_breakpoint [gdb_get_line_number "pvla-deassociated"]
-+gdb_continue_to_breakpoint "pvla-deassociated"
-+gdb_test "ptype pvla" "type = <not associated>" "ptype pvla deassociated"
-+gdb_test "ptype pvla(5, 45, 20)" \
-+ "no such vector element because not associated" \
-+ "ptype pvla(5, 45, 20) not associated"
-+
-+gdb_breakpoint [gdb_get_line_number "vla1-deallocated"]
-+gdb_continue_to_breakpoint "vla1-deallocated"
-+gdb_test "ptype vla1" "type = <not allocated>" "ptype vla1 not allocated"
-+gdb_test "ptype vla1(3, 6, 9)" "no such vector element because not allocated" \
-+ "ptype vla1(3, 6, 9) not allocated"
-+
-+gdb_breakpoint [gdb_get_line_number "vla2-deallocated"]
-+gdb_continue_to_breakpoint "vla2-deallocated"
-+gdb_test "ptype vla2" "type = <not allocated>" "ptype vla2 not allocated"
-+gdb_test "ptype vla2(5, 45, 20)" \
-+ "no such vector element because not allocated" \
-+ "ptype vla2(5, 45, 20) not allocated"
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-sizeof.exp
++ pvla => null() ! single-element
++end program vla_stride
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/vla-strings.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-sizeof.exp 2015-05-29 08:27:06.267740298 +0200
-@@ -0,0 +1,46 @@
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/vla-strings.exp 2015-11-03 21:13:45.863386007 +0100
+@@ -0,0 +1,101 @@
+# Copyright 2014 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
@@ -1640,150 +1106,15 @@ Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-sizeof.exp
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
-+standard_testfile "vla.f90"
++standard_testfile ".f90"
+
+if { [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} \
+ {debug f90 quiet}] } {
+ return -1
+}
-+
-+if ![runto MAIN__] then {
-+ perror "couldn't run to breakpoint MAIN__"
-+ continue
-+}
-+
-+# Try to access values in non allocated VLA
-+gdb_breakpoint [gdb_get_line_number "vla1-init"]
-+gdb_continue_to_breakpoint "vla1-init"
-+gdb_test "print sizeof(vla1)" " = 0" "print sizeof non-allocated vla1"
-+
-+# Try to access value in allocated VLA
-+gdb_breakpoint [gdb_get_line_number "vla2-allocated"]
-+gdb_continue_to_breakpoint "vla2-allocated"
-+gdb_test "print sizeof(vla1)" " = 4000" "print sizeof allocated vla1"
-+
-+# Try to access values in undefined pointer to VLA (dangling)
-+gdb_breakpoint [gdb_get_line_number "vla1-filled"]
-+gdb_continue_to_breakpoint "vla1-filled"
-+gdb_test "print sizeof(pvla)" " = 0" "print sizeof non-associated pvla"
-+
-+# Try to access values in pointer to VLA and compare them
-+gdb_breakpoint [gdb_get_line_number "pvla-associated"]
-+gdb_continue_to_breakpoint "pvla-associated"
-+gdb_test "print sizeof(pvla)" " = 4000" "print sizeof associated pvla"
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-stride.exp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-stride.exp 2015-05-29 08:27:06.267740298 +0200
-@@ -0,0 +1,44 @@
-+# Copyright 2014 Free Software Foundation, Inc.
-+
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 3 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program. If not, see <http://www.gnu.org/licenses/>.
-+
-+standard_testfile ".f90"
-+
-+if { [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} \
-+ {debug f90 quiet}] } {
-+ return -1
-+}
-+
-+if ![runto MAIN__] then {
-+ perror "couldn't run to breakpoint MAIN__"
-+ continue
-+}
-+
-+gdb_breakpoint [gdb_get_line_number "re-reverse-elements"]
-+gdb_continue_to_breakpoint "re-reverse-elements"
-+gdb_test "print pvla" " = \\\(1, 2, 3, 4, 5, 6, 7, 8, 9, 10\\\)" \
-+ "print re-reverse-elements"
-+gdb_test "print pvla(1)" " = 1" "print first re-reverse-element"
-+gdb_test "print pvla(10)" " = 10" "print last re-reverse-element"
-+
-+gdb_breakpoint [gdb_get_line_number "odd-elements"]
-+gdb_continue_to_breakpoint "odd-elements"
-+gdb_test "print pvla" " = \\\(1, 3, 5, 7, 9\\\)" "print odd-elements"
-+gdb_test "print pvla(1)" " = 1" "print first odd-element"
-+gdb_test "print pvla(5)" " = 9" "print last odd-element"
-+
-+gdb_breakpoint [gdb_get_line_number "single-element"]
-+gdb_continue_to_breakpoint "single-element"
-+gdb_test "print pvla" " = \\\(5\\\)" "print single-element"
-+gdb_test "print pvla(1)" " = 5" "print one single-element"
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-stride.f90
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-stride.f90 2015-05-29 08:27:06.268740305 +0200
-@@ -0,0 +1,30 @@
-+! Copyright 2014 Free Software Foundation, Inc.
-+!
-+! This program is free software; you can redistribute it and/or modify
-+! it under the terms of the GNU General Public License as published by
-+! the Free Software Foundation; either version 2 of the License, or
-+! (at your option) any later version.
-+!
-+! This program is distributed in the hope that it will be useful,
-+! but WITHOUT ANY WARRANTY; without even the implied warranty of
-+! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+! GNU General Public License for more details.
-+!
-+! You should have received a copy of the GNU General Public License
-+! along with this program; if not, write to the Free Software
-+! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+
-+program vla_stride
-+ integer, target, allocatable :: vla (:)
-+ integer, pointer :: pvla (:)
-+
-+ allocate(vla(10))
-+ vla = (/ (I, I = 1,10) /)
-+
-+ pvla => vla(10:1:-1)
-+ pvla => pvla(10:1:-1)
-+ pvla => vla(1:10:2) ! re-reverse-elements
-+ pvla => vla(5:4:-2) ! odd-elements
-+
-+ pvla => null() ! single-element
-+end program vla_stride
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-strings.exp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-strings.exp 2015-05-29 08:27:06.268740305 +0200
-@@ -0,0 +1,104 @@
-+# Copyright 2014 Free Software Foundation, Inc.
-+
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 3 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program. If not, see <http://www.gnu.org/licenses/>.
-+
-+standard_testfile ".f90"
-+
-+if { [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} \
-+ {debug f90 quiet}] } {
-+ return -1
-+}
-+
-+# check that all fortran standard datatypes will be
-+# handled correctly when using as VLA's
++
++# check that all fortran standard datatypes will be
++# handled correctly when using as VLA's
+
+if ![runto MAIN__] then {
+ perror "couldn't run to breakpoint MAIN__"
@@ -1795,9 +1126,6 @@ Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-strings.exp
+gdb_test "print var_char" \
+ " = \\(PTR TO -> \\( character\\*10 \\)\\) ${hex}" \
+ "print var_char after allocated first time"
-+gdb_test "print *var_char" \
-+ " = '\\\\000\\\\000\\\\000\\\\000\\\\000\\\\000\\\\000\\\\000\\\\000\\\\000'" \
-+ "print *var_char after allocated first time"
+gdb_test "whatis var_char" "type = PTR TO -> \\( character\\*10 \\)" \
+ "whatis var_char first time"
+gdb_test "ptype var_char" "type = PTR TO -> \\( character\\*10 \\)" \
@@ -1864,10 +1192,10 @@ Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-strings.exp
+ "whatis var_char_p after associated"
+gdb_test "ptype var_char_p" "type = PTR TO -> \\( character\\*7 \\)" \
+ "ptype var_char_p after associated"
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-strings.f90
+Index: gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/vla-strings.f90
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-strings.f90 2015-05-31 15:25:01.305615755 +0200
++++ gdb-7.10.50.20151027/gdb/testsuite/gdb.fortran/vla-strings.f90 2015-11-03 20:41:48.543504999 +0100
@@ -0,0 +1,40 @@
+! Copyright 2014 Free Software Foundation, Inc.
+!
@@ -1909,734 +1237,11 @@ Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-strings.f90
+ var_char_p => null()
+ l = associated(var_char_p) ! var_char_p-not-associated
+end program vla_strings
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-sub.f90
+Index: gdb-7.10.50.20151027/gdb/typeprint.c
===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-sub.f90 2015-05-29 08:27:06.268740305 +0200
-@@ -0,0 +1,82 @@
-+! Copyright 2014 Free Software Foundation, Inc.
-+!
-+! This program is free software; you can redistribute it and/or modify
-+! it under the terms of the GNU General Public License as published by
-+! the Free Software Foundation; either version 2 of the License, or
-+! (at your option) any later version.
-+!
-+! This program is distributed in the hope that it will be useful,
-+! but WITHOUT ANY WARRANTY; without even the implied warranty of
-+! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+! GNU General Public License for more details.
-+!
-+! You should have received a copy of the GNU General Public License
-+! along with this program; if not, write to the Free Software
-+! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+!
-+! Original file written by Jakub Jelinek <jakub@redhat.com> and
-+! Jan Kratochvil <jan.kratochvil@redhat.com>.
-+! Modified for the GDB testcases by Keven Boell <keven.boell@intel.com>.
-+
-+subroutine foo (array1, array2)
-+ integer :: array1 (:, :)
-+ real :: array2 (:, :, :)
-+
-+ array1(:,:) = 5 ! not-filled
-+ array1(1, 1) = 30
-+
-+ array2(:,:,:) = 6 ! array1-filled
-+ array2(:,:,:) = 3
-+ array2(1,1,1) = 30
-+ array2(3,3,3) = 90 ! array2-almost-filled
-+end subroutine
-+
-+subroutine bar (array1, array2)
-+ integer :: array1 (*)
-+ integer :: array2 (4:9, 10:*)
-+
-+ array1(5:10) = 1311
-+ array1(7) = 1
-+ array1(100) = 100
-+ array2(4,10) = array1(7)
-+ array2(4,100) = array1(7)
-+ return ! end-of-bar
-+end subroutine
-+
-+program vla_sub
-+ interface
-+ subroutine foo (array1, array2)
-+ integer :: array1 (:, :)
-+ real :: array2 (:, :, :)
-+ end subroutine
-+ end interface
-+ interface
-+ subroutine bar (array1, array2)
-+ integer :: array1 (*)
-+ integer :: array2 (4:9, 10:*)
-+ end subroutine
-+ end interface
-+
-+ real, allocatable :: vla1 (:, :, :)
-+ integer, allocatable :: vla2 (:, :)
-+
-+ ! used for subroutine
-+ integer :: sub_arr1(42, 42)
-+ real :: sub_arr2(42, 42, 42)
-+ integer :: sub_arr3(42)
-+
-+ sub_arr1(:,:) = 1 ! vla2-deallocated
-+ sub_arr2(:,:,:) = 2
-+ sub_arr3(:) = 3
-+
-+ call foo(sub_arr1, sub_arr2)
-+ call foo(sub_arr1(5:10, 5:10), sub_arr2(10:15,10:15,10:15))
-+
-+ allocate (vla1 (10,10,10))
-+ allocate (vla2 (20,20))
-+ vla1(:,:,:) = 1311
-+ vla2(:,:) = 42
-+ call foo(vla2, vla1)
-+
-+ call bar(sub_arr3, sub_arr1)
-+end program vla_sub
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-value-sub-arbitrary.exp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-value-sub-arbitrary.exp 2015-05-29 08:27:06.268740305 +0200
-@@ -0,0 +1,35 @@
-+# Copyright 2014 Free Software Foundation, Inc.
-+
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 3 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program. If not, see <http://www.gnu.org/licenses/>.
-+
-+standard_testfile "vla-sub.f90"
-+
-+if { [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} \
-+ {debug f90 quiet}] } {
-+ return -1
-+}
-+
-+if ![runto MAIN__] then {
-+ perror "couldn't run to breakpoint MAIN__"
-+ continue
-+}
-+
-+# Check VLA with arbitary length and check that elements outside of
-+# bounds of the passed VLA can be accessed correctly.
-+gdb_breakpoint [gdb_get_line_number "end-of-bar"]
-+gdb_continue_to_breakpoint "end-of-bar"
-+gdb_test "p array1(42)" " = 3" "print arbitary array1(42)"
-+gdb_test "p array1(100)" " = 100" "print arbitary array1(100)"
-+gdb_test "p array2(4,10)" " = 1" "print arbitary array2(4,10)"
-+gdb_test "p array2(4,100)" " = 1" "print arbitary array2(4,100)"
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-value-sub-finish.exp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-value-sub-finish.exp 2015-05-29 08:27:06.268740305 +0200
-@@ -0,0 +1,49 @@
-+# Copyright 2014 Free Software Foundation, Inc.
-+
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 3 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program. If not, see <http://www.gnu.org/licenses/>.
-+
-+standard_testfile "vla-sub.f90"
-+
-+if { [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} \
-+ {debug f90 quiet}] } {
-+ return -1
-+}
-+
-+if ![runto MAIN__] then {
-+ perror "couldn't run to breakpoint MAIN__"
-+ continue
-+}
-+
-+# "up" works with GCC but other Fortran compilers may copy the values into the
-+# outer function only on the exit of the inner function.
-+# We need both variants as depending on the arch we optionally may still be
-+# executing the caller line or not after `finish'.
-+
-+gdb_breakpoint [gdb_get_line_number "array2-almost-filled"]
-+gdb_continue_to_breakpoint "array2-almost-filled"
-+gdb_test "print array2" " = \\( *\\( *\\( *30, *3, *3,\[()3, .\]*\\)" \
-+ "print array2 in foo after it was filled"
-+gdb_test "print array2(2,1,1)=20" " = 20" \
-+ "set array(2,2,2) to 20 in subroutine"
-+gdb_test "print array2" " = \\( *\\( *\\( *30, *20, *3,\[()3, .\]*\\)" \
-+ "print array2 in foo after it was mofified in debugger"
-+
-+gdb_test "finish" \
-+ ".*foo\\\(sub_arr1\\\(5:10, 5:10\\\), sub_arr2\\\(10:15,10:15,10:15\\\)\\\)" \
-+ "finish function"
-+gdb_test "p sub_arr1(5, 7)" " = 5" "sub_arr1(5, 7) after finish"
-+gdb_test "p sub_arr1(1, 1)" " = 30" "sub_arr1(1, 1) after finish"
-+gdb_test "p sub_arr2(1, 1, 1)" " = 30" "sub_arr2(1, 1, 1) after finish"
-+gdb_test "p sub_arr2(2, 1, 1)" " = 20" "sub_arr2(2, 1, 1) after finish"
-+
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-value-sub.exp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-value-sub.exp 2015-05-29 08:27:06.269740311 +0200
-@@ -0,0 +1,90 @@
-+# Copyright 2014 Free Software Foundation, Inc.
-+
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 3 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program. If not, see <http://www.gnu.org/licenses/>.
-+
-+standard_testfile "vla-sub.f90"
-+
-+if { [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} \
-+ {debug f90 quiet}] } {
-+ return -1
-+}
-+
-+if ![runto MAIN__] then {
-+ perror "couldn't run to breakpoint MAIN__"
-+ continue
-+}
-+
-+# Check the values of VLA's in subroutine can be evaluated correctly
-+
-+# Try to access values from a fixed array handled as VLA in subroutine.
-+gdb_breakpoint [gdb_get_line_number "not-filled"]
-+gdb_continue_to_breakpoint "not-filled (1st)"
-+gdb_test "print array1" " = \\(\[()1, .\]*\\)" \
-+ "print passed array1 in foo (passed fixed array)"
-+
-+gdb_breakpoint [gdb_get_line_number "array1-filled"]
-+gdb_continue_to_breakpoint "array1-filled (1st)"
-+gdb_test "print array1(5, 7)" " = 5" \
-+ "print array1(5, 7) after filled in foo (passed fixed array)"
-+gdb_test "print array1(1, 1)" " = 30" \
-+ "print array1(1, 1) after filled in foo (passed fixed array)"
-+
-+gdb_breakpoint [gdb_get_line_number "array2-almost-filled"]
-+gdb_continue_to_breakpoint "array2-almost-filled (1st)"
-+gdb_test "print array2" " = \\( *\\( *\\( *30, *3, *3,\[()3, .\]*\\)" \
-+ "print array2 in foo after it was filled (passed fixed array)"
-+gdb_test "print array2(2,1,1)=20" " = 20" \
-+ "set array(2,2,2) to 20 in subroutine (passed fixed array)"
-+gdb_test "print array2" " = \\( *\\( *\\( *30, *20, *3,\[()3, .\]*\\)" \
-+ "print array2 in foo after it was mofified in debugger (passed fixed array)"
-+
-+
-+# Try to access values from a fixed sub-array handled as VLA in subroutine.
-+gdb_continue_to_breakpoint "not-filled (2nd)"
-+gdb_test "print array1" " = \\(\[()5, .\]*\\)" \
-+ "print passed array1 in foo (passed sub-array)"
-+
-+gdb_continue_to_breakpoint "array1-filled (2nd)"
-+gdb_test "print array1(5, 5)" " = 5" \
-+ "print array1(5, 5) after filled in foo (passed sub-array)"
-+gdb_test "print array1(1, 1)" " = 30" \
-+ "print array1(1, 1) after filled in foo (passed sub-array)"
-+
-+gdb_continue_to_breakpoint "array2-almost-filled (2nd)"
-+gdb_test "print array2" " = \\( *\\( *\\( *30, *3, *3,\[()3, .\]*\\)" \
-+ "print array2 in foo after it was filled (passed sub-array)"
-+gdb_test "print array2(2,1,1)=20" " = 20" \
-+ "set array(2,2,2) to 20 in subroutine (passed sub-array)"
-+gdb_test "print array2" " = \\( *\\( *\\( *30, *20, *3,\[()3, .\]*\\)" \
-+ "print array2 in foo after it was mofified in debugger (passed sub-array)"
-+
-+
-+# Try to access values from a VLA passed to subroutine.
-+gdb_continue_to_breakpoint "not-filled (3rd)"
-+gdb_test "print array1" " = \\(\[()42, .\]*\\)" \
-+ "print passed array1 in foo (passed vla)"
-+
-+gdb_continue_to_breakpoint "array1-filled (3rd)"
-+gdb_test "print array1(5, 5)" " = 5" \
-+ "print array1(5, 5) after filled in foo (passed vla)"
-+gdb_test "print array1(1, 1)" " = 30" \
-+ "print array1(1, 1) after filled in foo (passed vla)"
-+
-+gdb_continue_to_breakpoint "array2-almost-filled (3rd)"
-+gdb_test "print array2" " = \\( *\\( *\\( *30, *3, *3,\[()3, .\]*\\)" \
-+ "print array2 in foo after it was filled (passed vla)"
-+gdb_test "print array2(2,1,1)=20" " = 20" \
-+ "set array(2,2,2) to 20 in subroutine (passed vla)"
-+gdb_test "print array2" " = \\( *\\( *\\( *30, *20, *3,\[()3, .\]*\\)" \
-+ "print array2 in foo after it was mofified in debugger (passed vla)"
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-value.exp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla-value.exp 2015-05-29 08:27:06.269740311 +0200
-@@ -0,0 +1,148 @@
-+# Copyright 2014 Free Software Foundation, Inc.
-+
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 3 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program. If not, see <http://www.gnu.org/licenses/>.
-+
-+standard_testfile "vla.f90"
-+
-+if { [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} \
-+ {debug f90 quiet}] } {
-+ return -1
-+}
-+
-+if ![runto MAIN__] then {
-+ perror "couldn't run to breakpoint MAIN__"
-+ continue
-+}
-+
-+# Try to access values in non allocated VLA
-+gdb_breakpoint [gdb_get_line_number "vla1-init"]
-+gdb_continue_to_breakpoint "vla1-init"
-+gdb_test "print vla1" " = <not allocated>" "print non-allocated vla1"
-+gdb_test "print &vla1" \
-+ " = \\\(PTR TO -> \\\( real\\\(kind=4\\\) \\\(<not allocated>\\\)\\\)\\\) $hex" \
-+ "print non-allocated &vla1"
-+gdb_test "print vla1(1,1,1)" "no such vector element because not allocated" \
-+ "print member in non-allocated vla1 (1)"
-+gdb_test "print vla1(101,202,303)" \
-+ "no such vector element because not allocated" \
-+ "print member in non-allocated vla1 (2)"
-+gdb_test "print vla1(5,2,18)=1" "no such vector element because not allocated" \
-+ "set member in non-allocated vla1"
-+
-+# Try to access value in allocated VLA
-+gdb_breakpoint [gdb_get_line_number "vla2-allocated"]
-+gdb_continue_to_breakpoint "vla2-allocated"
-+gdb_test "next" "\\d+(\\t|\\s)+vla1\\\(3, 6, 9\\\) = 42" \
-+ "step over value assignment of vla1"
-+gdb_test "print &vla1" \
-+ " = \\\(PTR TO -> \\\( real\\\(kind=4\\\) \\\(10,10,10\\\)\\\)\\\) $hex" \
-+ "print allocated &vla1"
-+gdb_test "print vla1(3, 6, 9)" " = 1311" "print allocated vla1(3,6,9)"
-+gdb_test "print vla1(1, 3, 8)" " = 1311" "print allocated vla1(1,3,8)"
-+gdb_test "print vla1(9, 9, 9) = 999" " = 999" \
-+ "print allocated vla1(9,9,9)=1"
-+
-+# Try to access values in allocated VLA after specific assignment
-+gdb_breakpoint [gdb_get_line_number "vla1-filled"]
-+gdb_continue_to_breakpoint "vla1-filled"
-+gdb_test "print vla1(3, 6, 9)" " = 42" \
-+ "print allocated vla1(3,6,9) after specific assignment (filled)"
-+gdb_test "print vla1(1, 3, 8)" " = 1001" \
-+ "print allocated vla1(1,3,8) after specific assignment (filled)"
-+gdb_test "print vla1(9, 9, 9)" " = 999" \
-+ "print allocated vla1(9,9,9) after assignment in debugger (filled)"
-+
-+# Try to access values in undefined pointer to VLA (dangling)
-+gdb_test "print pvla" " = <not associated>" "print undefined pvla"
-+gdb_test "print &pvla" \
-+ " = \\\(PTR TO -> \\\( real\\\(kind=4\\\) \\\(<not associated>\\\)\\\)\\\) $hex" \
-+ "print non-associated &pvla"
-+gdb_test "print pvla(1, 3, 8)" "no such vector element because not associated" \
-+ "print undefined pvla(1,3,8)"
-+
-+# Try to access values in pointer to VLA and compare them
-+gdb_breakpoint [gdb_get_line_number "pvla-associated"]
-+gdb_continue_to_breakpoint "pvla-associated"
-+gdb_test "print &pvla" \
-+ " = \\\(PTR TO -> \\\( real\\\(kind=4\\\) \\\(10,10,10\\\)\\\)\\\) $hex" \
-+ "print associated &pvla"
-+gdb_test "print pvla(3, 6, 9)" " = 42" "print associated pvla(3,6,9)"
-+gdb_test "print pvla(1, 3, 8)" " = 1001" "print associated pvla(1,3,8)"
-+gdb_test "print pvla(9, 9, 9)" " = 999" "print associated pvla(9,9,9)"
-+
-+# Fill values to VLA using pointer and check
-+gdb_breakpoint [gdb_get_line_number "pvla-re-associated"]
-+gdb_continue_to_breakpoint "pvla-re-associated"
-+gdb_test "print pvla(5, 45, 20)" \
-+ " = 1" "print pvla(5, 45, 20) after filled using pointer"
-+gdb_test "print vla2(5, 45, 20)" \
-+ " = 1" "print vla2(5, 45, 20) after filled using pointer"
-+gdb_test "print pvla(7, 45, 14)" " = 2" \
-+ "print pvla(7, 45, 14) after filled using pointer"
-+gdb_test "print vla2(7, 45, 14)" " = 2" \
-+ "print vla2(7, 45, 14) after filled using pointer"
-+
-+# Try to access values of deassociated VLA pointer
-+gdb_breakpoint [gdb_get_line_number "pvla-deassociated"]
-+gdb_continue_to_breakpoint "pvla-deassociated"
-+gdb_test "print pvla(5, 45, 20)" \
-+ "no such vector element because not associated" \
-+ "print pvla(5, 45, 20) after deassociated"
-+gdb_test "print pvla(7, 45, 14)" \
-+ "no such vector element because not associated" \
-+ "print pvla(7, 45, 14) after dissasociated"
-+gdb_test "print pvla" " = <not associated>" \
-+ "print vla1 after deassociated"
-+
-+# Try to access values of deallocated VLA
-+gdb_breakpoint [gdb_get_line_number "vla1-deallocated"]
-+gdb_continue_to_breakpoint "vla1-deallocated"
-+gdb_test "print vla1(3, 6, 9)" "no such vector element because not allocated" \
-+ "print allocated vla1(3,6,9) after specific assignment (deallocated)"
-+gdb_test "print vla1(1, 3, 8)" "no such vector element because not allocated" \
-+ "print allocated vla1(1,3,8) after specific assignment (deallocated)"
-+gdb_test "print vla1(9, 9, 9)" "no such vector element because not allocated" \
-+ "print allocated vla1(9,9,9) after assignment in debugger (deallocated)"
-+
-+
-+# Try to assign VLA to user variable
-+clean_restart ${testfile}
-+
-+if ![runto MAIN__] then {
-+ perror "couldn't run to breakpoint MAIN__"
-+ continue
-+}
-+gdb_breakpoint [gdb_get_line_number "vla2-allocated"]
-+gdb_continue_to_breakpoint "vla2-allocated"
-+gdb_test "next" "\\d+.*vla1\\(3, 6, 9\\) = 42" "next (1)"
-+
-+gdb_test_no_output "set \$myvar = vla1" "set \$myvar = vla1"
-+gdb_test "print \$myvar" \
-+ " = \\( *\\( *\\( *1311, *1311, *1311,\[()1311, .\]*\\)" \
-+ "print \$myvar set to vla1"
-+
-+gdb_test "next" "\\d+.*vla1\\(1, 3, 8\\) = 1001" "next (2)"
-+gdb_test "print \$myvar(3,6,9)" " = 1311" "print \$myvar(3,6,9)"
-+
-+gdb_breakpoint [gdb_get_line_number "pvla-associated"]
-+gdb_continue_to_breakpoint "pvla-associated"
-+gdb_test_no_output "set \$mypvar = pvla" "set \$mypvar = pvla"
-+gdb_test "print \$mypvar(1,3,8)" " = 1001" "print \$mypvar(1,3,8)"
-+
-+# deallocate pointer and make sure user defined variable still has the
-+# right value.
-+gdb_breakpoint [gdb_get_line_number "pvla-deassociated"]
-+gdb_continue_to_breakpoint "pvla-deassociated"
-+gdb_test "print \$mypvar(1,3,8)" " = 1001" \
-+ "print \$mypvar(1,3,8) after deallocated"
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla.f90
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.fortran/vla.f90 2015-05-29 08:27:06.269740311 +0200
-@@ -0,0 +1,56 @@
-+! Copyright 2014 Free Software Foundation, Inc.
-+!
-+! This program is free software; you can redistribute it and/or modify
-+! it under the terms of the GNU General Public License as published by
-+! the Free Software Foundation; either version 3 of the License, or
-+! (at your option) any later version.
-+!
-+! This program is distributed in the hope that it will be useful,
-+! but WITHOUT ANY WARRANTY; without even the implied warranty of
-+! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+! GNU General Public License for more details.
-+!
-+! You should have received a copy of the GNU General Public License
-+! along with this program. If not, see <http://www.gnu.org/licenses/>.
-+
-+program vla
-+ real, target, allocatable :: vla1 (:, :, :)
-+ real, target, allocatable :: vla2 (:, :, :)
-+ real, target, allocatable :: vla3 (:, :)
-+ real, pointer :: pvla (:, :, :)
-+ logical :: l
-+
-+ allocate (vla1 (10,10,10)) ! vla1-init
-+ l = allocated(vla1)
-+
-+ allocate (vla2 (1:7,42:50,13:35)) ! vla1-allocated
-+ l = allocated(vla2)
-+
-+ vla1(:, :, :) = 1311 ! vla2-allocated
-+ vla1(3, 6, 9) = 42
-+ vla1(1, 3, 8) = 1001
-+ vla1(6, 2, 7) = 13
-+
-+ vla2(:, :, :) = 1311 ! vla1-filled
-+ vla2(5, 45, 20) = 42
-+
-+ pvla => vla1 ! vla2-filled
-+ l = associated(pvla)
-+
-+ pvla => vla2 ! pvla-associated
-+ l = associated(pvla)
-+ pvla(5, 45, 20) = 1
-+ pvla(7, 45, 14) = 2
-+
-+ pvla => null() ! pvla-re-associated
-+ l = associated(pvla)
-+
-+ deallocate (vla1) ! pvla-deassociated
-+ l = allocated(vla1)
-+
-+ deallocate (vla2) ! vla1-deallocated
-+ l = allocated(vla2)
-+
-+ allocate (vla3 (2,2)) ! vla2-deallocated
-+ vla3(:,:) = 13
-+end program vla
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.mi/mi-vla-fortran.exp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.mi/mi-vla-fortran.exp 2015-05-29 11:13:53.951656591 +0200
-@@ -0,0 +1,181 @@
-+# Copyright 2014 Free Software Foundation, Inc.
-+
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 3 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program. If not, see <http://www.gnu.org/licenses/>.
-+
-+# Verify that, using the MI, we can evaluate a simple C Variable Length
-+# Array (VLA).
-+
-+load_lib mi-support.exp
-+set MIFLAGS "-i=mi"
-+
-+gdb_exit
-+if [mi_gdb_start] {
-+ continue
-+}
-+
-+standard_testfile vla.f90
-+
-+if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable \
-+ {debug f90}] != "" } {
-+ untested mi-vla-fortran.exp
-+ return -1
-+}
-+
-+mi_delete_breakpoints
-+mi_gdb_reinitialize_dir $srcdir/$subdir
-+mi_gdb_load ${binfile}
-+
-+set bp_lineno [gdb_get_line_number "vla1-not-allocated"]
-+mi_create_breakpoint "-t vla.f90:$bp_lineno" 1 "del" "vla" \
-+ ".*vla.f90" $bp_lineno $hex \
-+ "insert breakpoint at line $bp_lineno (vla not allocated)"
-+mi_run_cmd
-+mi_expect_stop "breakpoint-hit" "vla" "" ".*vla.f90" "$bp_lineno" \
-+ { "" "disp=\"del\"" } "run to breakpoint at line $bp_lineno"
-+mi_gdb_test "500-data-evaluate-expression vla1" \
-+ "500\\^done,value=\"<not allocated>\"" "evaluate not allocated vla"
-+
-+mi_create_varobj_checked vla1_not_allocated vla1 "<not allocated>" \
-+ "create local variable vla1_not_allocated"
-+mi_gdb_test "501-var-info-type vla1_not_allocated" \
-+ "501\\^done,type=\"<not allocated>\"" \
-+ "info type variable vla1_not_allocated"
-+mi_gdb_test "502-var-show-format vla1_not_allocated" \
-+ "502\\^done,format=\"natural\"" \
-+ "show format variable vla1_not_allocated"
-+mi_gdb_test "503-var-evaluate-expression vla1_not_allocated" \
-+ "503\\^done,value=\"\\\[0\\\]\"" \
-+ "eval variable vla1_not_allocated"
-+mi_list_array_varobj_children_with_index "vla1_not_allocated" "0" "1" \
-+ "real\\\(kind=4\\\)" "get children of vla1_not_allocated"
-+
-+
-+
-+set bp_lineno [gdb_get_line_number "vla1-allocated"]
-+mi_create_breakpoint "-t vla.f90:$bp_lineno" 2 "del" "vla" ".*vla.f90" \
-+ $bp_lineno $hex "insert breakpoint at line $bp_lineno (vla allocated)"
-+mi_run_cmd
-+mi_expect_stop "breakpoint-hit" "vla" "" ".*vla.f90" "$bp_lineno" \
-+ { "" "disp=\"del\"" } "run to breakpoint at line $bp_lineno"
-+# Content of 'vla1' is uninitialized here.
-+
-+mi_create_varobj_checked vla1_allocated vla1 "real\\\(kind=4\\\) \\\(5\\\)" \
-+ "create local variable vla1_allocated"
-+mi_gdb_test "511-var-info-type vla1_allocated" \
-+ "511\\^done,type=\"real\\\(kind=4\\\) \\\(5\\\)\"" \
-+ "info type variable vla1_allocated"
-+mi_gdb_test "512-var-show-format vla1_allocated" \
-+ "512\\^done,format=\"natural\"" \
-+ "show format variable vla1_allocated"
-+mi_gdb_test "513-var-evaluate-expression vla1_allocated" \
-+ "513\\^done,value=\"\\\[5\\\]\"" \
-+ "eval variable vla1_allocated"
-+mi_list_array_varobj_children_with_index "vla1_allocated" "5" "1" \
-+ "real\\\(kind=4\\\)" "get children of vla1_allocated"
-+
-+
-+set bp_lineno [gdb_get_line_number "vla1-filled"]
-+mi_create_breakpoint "-t vla.f90:$bp_lineno" 3 "del" "vla" ".*vla.f90" \
-+ $bp_lineno $hex "insert breakpoint at line $bp_lineno"
-+mi_run_cmd
-+mi_expect_stop "breakpoint-hit" "vla" "" ".*vla.f90" "$bp_lineno" \
-+ { "" "disp=\"del\"" } "run to breakpoint at line $bp_lineno"
-+mi_gdb_test "520-data-evaluate-expression vla1" \
-+ "520\\^done,value=\"\\(1, 1, 1, 1, 1\\)\"" "evaluate filled vla"
-+
-+
-+set bp_lineno [gdb_get_line_number "vla1-modified"]
-+mi_create_breakpoint "-t vla.f90:$bp_lineno" 4 "del" "vla" ".*vla.f90" \
-+ $bp_lineno $hex "insert breakpoint at line $bp_lineno"
-+mi_run_cmd
-+mi_expect_stop "breakpoint-hit" "vla" "" ".*vla.f90" "$bp_lineno" \
-+ { "" "disp=\"del\"" } "run to breakpoint at line $bp_lineno"
-+mi_gdb_test "530-data-evaluate-expression vla1" \
-+ "530\\^done,value=\"\\(1, 42, 1, 24, 1\\)\"" "evaluate filled vla"
-+mi_gdb_test "540-data-evaluate-expression vla1(1)" \
-+ "540\\^done,value=\"1\"" "evaluate filled vla"
-+mi_gdb_test "550-data-evaluate-expression vla1(2)" \
-+ "550\\^done,value=\"42\"" "evaluate filled vla"
-+mi_gdb_test "560-data-evaluate-expression vla1(4)" \
-+ "560\\^done,value=\"24\"" "evaluate filled vla"
-+
-+
-+set bp_lineno [gdb_get_line_number "vla1-deallocated"]
-+mi_create_breakpoint "-t vla.f90:$bp_lineno" 5 "del" "vla" ".*vla.f90" \
-+ $bp_lineno $hex "insert breakpoint at line $bp_lineno"
-+mi_run_cmd
-+mi_expect_stop "breakpoint-hit" "vla" "" ".*vla.f90" "$bp_lineno" \
-+ { "" "disp=\"del\"" } "run to breakpoint at line $bp_lineno"
-+mi_gdb_test "570-data-evaluate-expression vla1" \
-+ "570\\^done,value=\"<not allocated>\"" "evaluate not allocated vla"
-+
-+
-+set bp_lineno [gdb_get_line_number "pvla2-not-associated"]
-+mi_create_breakpoint "-t vla.f90:$bp_lineno" 6 "del" "vla" ".*vla.f90" \
-+ $bp_lineno $hex "insert breakpoint at line $bp_lineno"
-+mi_run_cmd
-+mi_expect_stop "breakpoint-hit" "vla" "" ".*vla.f90" "$bp_lineno" \
-+ { "" "disp=\"del\"" } "run to breakpoint at line $bp_lineno"
-+mi_gdb_test "580-data-evaluate-expression pvla2" \
-+ "580\\^done,value=\"<not associated>\"" "evaluate not associated vla"
-+
-+mi_create_varobj_checked pvla2_not_associated pvla2 "<not associated>" \
-+ "create local variable pvla2_not_associated"
-+mi_gdb_test "581-var-info-type pvla2_not_associated" \
-+ "581\\^done,type=\"<not associated>\"" \
-+ "info type variable pvla2_not_associated"
-+mi_gdb_test "582-var-show-format pvla2_not_associated" \
-+ "582\\^done,format=\"natural\"" \
-+ "show format variable pvla2_not_associated"
-+mi_gdb_test "583-var-evaluate-expression pvla2_not_associated" \
-+ "583\\^done,value=\"\\\[0\\\]\"" \
-+ "eval variable pvla2_not_associated"
-+mi_list_array_varobj_children_with_index "pvla2_not_associated" "0" "1" \
-+ "real\\\(kind=4\\\)" "get children of pvla2_not_associated"
-+
-+
-+set bp_lineno [gdb_get_line_number "pvla2-associated"]
-+mi_create_breakpoint "-t vla.f90:$bp_lineno" 7 "del" "vla" ".*vla.f90" \
-+ $bp_lineno $hex "insert breakpoint at line $bp_lineno"
-+mi_run_cmd
-+mi_expect_stop "breakpoint-hit" "vla" "" ".*vla.f90" "$bp_lineno" \
-+ { "" "disp=\"del\"" } "run to breakpoint at line $bp_lineno"
-+mi_gdb_test "590-data-evaluate-expression pvla2" \
-+ "590\\^done,value=\"\\(\\( 2, 2, 2, 2, 2\\) \\( 2, 2, 2, 2, 2\\) \\)\"" \
-+ "evaluate associated vla"
-+
-+mi_create_varobj_checked pvla2_associated pvla2 \
-+ "real\\\(kind=4\\\) \\\(5,2\\\)" "create local variable pvla2_associated"
-+mi_gdb_test "591-var-info-type pvla2_associated" \
-+ "591\\^done,type=\"real\\\(kind=4\\\) \\\(5,2\\\)\"" \
-+ "info type variable pvla2_associated"
-+mi_gdb_test "592-var-show-format pvla2_associated" \
-+ "592\\^done,format=\"natural\"" \
-+ "show format variable pvla2_associated"
-+mi_gdb_test "593-var-evaluate-expression pvla2_associated" \
-+ "593\\^done,value=\"\\\[2\\\]\"" \
-+ "eval variable pvla2_associated"
-+
-+
-+set bp_lineno [gdb_get_line_number "pvla2-set-to-null"]
-+mi_create_breakpoint "-t vla.f90:$bp_lineno" 8 "del" "vla" ".*vla.f90" \
-+ $bp_lineno $hex "insert breakpoint at line $bp_lineno"
-+mi_run_cmd
-+mi_expect_stop "breakpoint-hit" "vla" "" ".*vla.f90" "$bp_lineno" \
-+ { "" "disp=\"del\"" } "run to breakpoint at line $bp_lineno"
-+mi_gdb_test "600-data-evaluate-expression pvla2" \
-+ "600\\^done,value=\"<not associated>\"" "evaluate vla pointer set to null"
-+
-+mi_gdb_exit
-+return 0
-Index: gdb-7.9.50.20150520/gdb/testsuite/gdb.mi/vla.f90
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.50.20150520/gdb/testsuite/gdb.mi/vla.f90 2015-05-29 08:27:06.270740317 +0200
-@@ -0,0 +1,42 @@
-+! Copyright 2014 Free Software Foundation, Inc.
-+!
-+! This program is free software; you can redistribute it and/or modify
-+! it under the terms of the GNU General Public License as published by
-+! the Free Software Foundation; either version 3 of the License, or
-+! (at your option) any later version.
-+!
-+! This program is distributed in the hope that it will be useful,
-+! but WITHOUT ANY WARRANTY; without even the implied warranty of
-+! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+! GNU General Public License for more details.
-+!
-+! You should have received a copy of the GNU General Public License
-+! along with this program. If not, see <http://www.gnu.org/licenses/>.
-+
-+program vla
-+ real, allocatable :: vla1 (:)
-+ real, target, allocatable :: vla2(:, :)
-+ real, pointer :: pvla2 (:, :)
-+ logical :: l
-+
-+ allocate (vla1 (5)) ! vla1-not-allocated
-+ l = allocated(vla1) ! vla1-allocated
-+
-+ vla1(:) = 1
-+ vla1(2) = 42 ! vla1-filled
-+ vla1(4) = 24
-+
-+ deallocate (vla1) ! vla1-modified
-+ l = allocated(vla1) ! vla1-deallocated
-+
-+ allocate (vla2 (5, 2))
-+ vla2(:, :) = 2
-+
-+ pvla2 => vla2 ! pvla2-not-associated
-+ l = associated(pvla2) ! pvla2-associated
-+
-+ pvla2(2, 1) = 42
-+
-+ pvla2 => null()
-+ l = associated(pvla2) ! pvla2-set-to-null
-+end program vla
-Index: gdb-7.9.50.20150520/gdb/typeprint.c
-===================================================================
---- gdb-7.9.50.20150520.orig/gdb/typeprint.c 2015-05-29 08:27:02.688717523 +0200
-+++ gdb-7.9.50.20150520/gdb/typeprint.c 2015-05-29 08:27:06.270740317 +0200
-@@ -458,6 +458,13 @@ whatis_exp (char *exp, int show)
+--- gdb-7.10.50.20151027.orig/gdb/typeprint.c 2015-10-27 02:48:32.000000000 +0100
++++ gdb-7.10.50.20151027/gdb/typeprint.c 2015-11-03 21:13:35.959339113 +0100
+@@ -460,6 +460,13 @@ whatis_exp (char *exp, int show)
type = value_type (val);
@@ -2650,14 +1255,14 @@ Index: gdb-7.9.50.20150520/gdb/typeprint.c
get_user_print_options (&opts);
if (opts.objectprint)
{
-Index: gdb-7.9.50.20150520/gdb/valarith.c
+Index: gdb-7.10.50.20151027/gdb/valarith.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/valarith.c 2015-05-29 08:27:02.689717530 +0200
-+++ gdb-7.9.50.20150520/gdb/valarith.c 2015-05-29 08:27:06.271740324 +0200
-@@ -193,12 +193,31 @@ value_subscripted_rvalue (struct value *
+--- gdb-7.10.50.20151027.orig/gdb/valarith.c 2015-10-27 02:48:32.000000000 +0100
++++ gdb-7.10.50.20151027/gdb/valarith.c 2015-11-03 21:13:38.625351736 +0100
+@@ -193,9 +193,21 @@ value_subscripted_rvalue (struct value *
struct type *array_type = check_typedef (value_type (array));
struct type *elt_type = check_typedef (TYPE_TARGET_TYPE (array_type));
- unsigned int elt_size = TYPE_LENGTH (elt_type);
+ unsigned int elt_size = type_length_units (elt_type);
- unsigned int elt_offs = elt_size * longest_to_int (index - lowerbound);
+ unsigned int elt_offs = longest_to_int (index - lowerbound);
+ LONGEST elt_stride = TYPE_BYTE_STRIDE (TYPE_INDEX_TYPE (array_type));
@@ -2675,26 +1280,15 @@ Index: gdb-7.9.50.20150520/gdb/valarith.c
+ elt_offs *= elt_size;
+
if (index < lowerbound || (!TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED (array_type)
- && elt_offs >= TYPE_LENGTH (array_type)))
-- error (_("no such vector element"));
-+ {
-+ if (TYPE_NOT_ASSOCIATED (array_type))
-+ error (_("no such vector element because not associated"));
-+ else if (TYPE_NOT_ALLOCATED (array_type))
-+ error (_("no such vector element because not allocated"));
-+ else
-+ error (_("no such vector element"));
-+ }
-
- if (VALUE_LVAL (array) == lval_memory && value_lazy (array))
- v = allocate_value_lazy (elt_type);
-Index: gdb-7.9.50.20150520/gdb/valprint.c
+ && elt_offs >= type_length_units (array_type)))
+ {
+Index: gdb-7.10.50.20151027/gdb/valprint.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/valprint.c 2015-05-29 08:27:02.690717536 +0200
-+++ gdb-7.9.50.20150520/gdb/valprint.c 2015-05-29 08:27:06.271740324 +0200
-@@ -303,6 +303,18 @@ valprint_check_validity (struct ui_file
- {
- CHECK_TYPEDEF (type);
+--- gdb-7.10.50.20151027.orig/gdb/valprint.c 2015-10-27 02:48:32.000000000 +0100
++++ gdb-7.10.50.20151027/gdb/valprint.c 2015-11-03 21:13:35.959339113 +0100
+@@ -316,6 +316,18 @@ valprint_check_validity (struct ui_file
+ return 0;
+ }
+ if (TYPE_NOT_ASSOCIATED (type))
+ {
@@ -2711,26 +1305,7 @@ Index: gdb-7.9.50.20150520/gdb/valprint.c
if (TYPE_CODE (type) != TYPE_CODE_UNION
&& TYPE_CODE (type) != TYPE_CODE_STRUCT
&& TYPE_CODE (type) != TYPE_CODE_ARRAY)
-@@ -359,6 +371,18 @@ val_print_invalid_address (struct ui_fil
- fprintf_filtered (stream, _("<invalid address>"));
- }
-
-+void
-+val_print_not_allocated (struct ui_file *stream)
-+{
-+ fprintf_filtered (stream, _("<not allocated>"));
-+}
-+
-+void
-+val_print_not_associated (struct ui_file *stream)
-+{
-+ fprintf_filtered (stream, _("<not associated>"));
-+}
-+
- /* A generic val_print that is suitable for use by language
- implementations of the la_val_print method. This function can
- handle most type codes, though not all, notably exception
-@@ -802,12 +826,16 @@ static int
+@@ -1025,12 +1037,16 @@ static int
value_check_printable (struct value *val, struct ui_file *stream,
const struct value_print_options *options)
{
@@ -2747,10 +1322,12 @@ Index: gdb-7.9.50.20150520/gdb/valprint.c
if (value_entirely_optimized_out (val))
{
if (options->summary && !val_print_scalar_type_p (value_type (val)))
-@@ -833,6 +861,18 @@ value_check_printable (struct value *val
+@@ -1066,6 +1082,18 @@ value_check_printable (struct value *val
+ {
+ val_print_not_allocated (stream);
return 0;
- }
-
++ }
++
+ if (TYPE_NOT_ASSOCIATED (type))
+ {
+ val_print_not_associated (stream);
@@ -2761,15 +1338,13 @@ Index: gdb-7.9.50.20150520/gdb/valprint.c
+ {
+ val_print_not_allocated (stream);
+ return 0;
-+ }
-+
- return 1;
- }
+ }
-Index: gdb-7.9.50.20150520/gdb/valprint.h
+ return 1;
+Index: gdb-7.10.50.20151027/gdb/valprint.h
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/valprint.h 2015-05-29 08:27:02.691717543 +0200
-+++ gdb-7.9.50.20150520/gdb/valprint.h 2015-05-29 08:27:06.272740330 +0200
+--- gdb-7.10.50.20151027.orig/gdb/valprint.h 2015-10-27 02:48:32.000000000 +0100
++++ gdb-7.10.50.20151027/gdb/valprint.h 2015-11-03 21:13:35.959339113 +0100
@@ -232,4 +232,8 @@ extern void print_command_parse_format (
struct format_data *fmtp);
extern void print_value (struct value *val, const struct format_data *fmtp);
@@ -2779,10 +1354,10 @@ Index: gdb-7.9.50.20150520/gdb/valprint.h
+extern void val_print_not_associated (struct ui_file *stream);
+
#endif
-Index: gdb-7.9.50.20150520/gdb/value.c
+Index: gdb-7.10.50.20151027/gdb/value.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/value.c 2015-05-29 08:27:02.693717555 +0200
-+++ gdb-7.9.50.20150520/gdb/value.c 2015-05-29 08:27:06.273740337 +0200
+--- gdb-7.10.50.20151027.orig/gdb/value.c 2015-10-27 02:48:32.000000000 +0100
++++ gdb-7.10.50.20151027/gdb/value.c 2015-11-03 21:13:38.731352238 +0100
@@ -40,6 +40,7 @@
#include "tracepoint.h"
#include "cp-abi.h"
@@ -2791,7 +1366,7 @@ Index: gdb-7.9.50.20150520/gdb/value.c
/* Prototypes for exported functions. */
-@@ -1776,6 +1777,25 @@ set_value_component_location (struct val
+@@ -1788,6 +1789,25 @@ set_value_component_location (struct val
if (funcs->copy_closure)
component->location.computed.closure = funcs->copy_closure (whole);
}
@@ -2817,14 +1392,14 @@ Index: gdb-7.9.50.20150520/gdb/value.c
}
\f
-@@ -3080,13 +3100,22 @@ value_primitive_field (struct value *arg
+@@ -3095,13 +3115,22 @@ value_primitive_field (struct value *arg
v = allocate_value_lazy (type);
else
{
- v = allocate_value (type);
- value_contents_copy_raw (v, value_embedded_offset (v),
- arg1, value_embedded_offset (arg1) + offset,
-- TYPE_LENGTH (type));
+- type_length_units (type));
+ if (TYPE_DATA_LOCATION (type)
+ && TYPE_DATA_LOCATION_KIND (type) == PROP_CONST)
+ v = value_at_lazy (type, value_address (arg1) + offset);
@@ -2833,7 +1408,7 @@ Index: gdb-7.9.50.20150520/gdb/value.c
+ v = allocate_value (type);
+ value_contents_copy_raw (v, value_embedded_offset (v),
+ arg1, value_embedded_offset (arg1) + offset,
-+ TYPE_LENGTH (type));
++ type_length_units (type));
+ }
}
- v->offset = (value_offset (arg1) + offset
@@ -2846,7 +1421,7 @@ Index: gdb-7.9.50.20150520/gdb/value.c
}
set_value_component_location (v, arg1);
VALUE_REGNUM (v) = VALUE_REGNUM (arg1);
-@@ -3674,7 +3703,8 @@ readjust_indirect_value_type (struct val
+@@ -3689,7 +3718,8 @@ readjust_indirect_value_type (struct val
struct value *original_value)
{
/* Re-adjust type. */
@@ -2856,7 +1431,7 @@ Index: gdb-7.9.50.20150520/gdb/value.c
/* Add embedding info. */
set_value_enclosing_type (value, enc_type);
-@@ -3691,6 +3721,12 @@ coerce_ref (struct value *arg)
+@@ -3706,6 +3736,12 @@ coerce_ref (struct value *arg)
struct value *retval;
struct type *enc_type;
@@ -2869,7 +1444,7 @@ Index: gdb-7.9.50.20150520/gdb/value.c
retval = coerce_ref_if_computed (arg);
if (retval)
return retval;
-@@ -3825,8 +3861,14 @@ value_fetch_lazy (struct value *val)
+@@ -3834,8 +3870,14 @@ value_fetch_lazy (struct value *val)
}
else if (VALUE_LVAL (val) == lval_memory)
{
@@ -2885,11 +1460,11 @@ Index: gdb-7.9.50.20150520/gdb/value.c
if (TYPE_LENGTH (type))
read_value_memory (val, 0, value_stack (val),
-Index: gdb-7.9.50.20150520/gdb/dwarf2loc.c
+Index: gdb-7.10.50.20151027/gdb/dwarf2loc.c
===================================================================
---- gdb-7.9.50.20150520.orig/gdb/dwarf2loc.c 2015-05-29 08:27:02.694717562 +0200
-+++ gdb-7.9.50.20150520/gdb/dwarf2loc.c 2015-05-29 08:27:06.274740343 +0200
-@@ -2294,6 +2294,11 @@ dwarf2_evaluate_loc_desc_full (struct ty
+--- gdb-7.10.50.20151027.orig/gdb/dwarf2loc.c 2015-10-27 02:48:31.000000000 +0100
++++ gdb-7.10.50.20151027/gdb/dwarf2loc.c 2015-11-03 21:13:35.959339113 +0100
+@@ -2347,6 +2347,11 @@ dwarf2_evaluate_loc_desc_full (struct ty
int in_stack_memory = dwarf_expr_fetch_in_stack_memory (ctx, 0);
do_cleanups (value_chain);
@@ -2901,7 +1476,7 @@ Index: gdb-7.9.50.20150520/gdb/dwarf2loc.c
retval = value_at_lazy (type, address + byte_offset);
if (in_stack_memory)
set_value_stack (retval, 1);
-@@ -2577,6 +2582,19 @@ dwarf2_compile_property_to_c (struct ui_
+@@ -2639,6 +2644,19 @@ dwarf2_compile_property_to_c (struct ui_
data, data + size, per_cu);
}
diff --git a/gdb.spec b/gdb.spec
index ecdb3fc..e07b286 100644
--- a/gdb.spec
+++ b/gdb.spec
@@ -19,15 +19,15 @@ Summary: A GNU source-level debugger for C, C++, Fortran, Go and other languages
Name: %{?scl_prefix}gdb
# Freeze it when GDB gets branched
-%global snapsrc 20150706
+%global snapsrc 20151027
# See timestamp of source gnulib installed into gdb/gnulib/ .
-%global snapgnulib 20121213
+%global snapgnulib 20150822
%global tarname gdb-%{version}
-Version: 7.10
+Version: 7.10.50.%{snapsrc}
# The release always contains a leading reserved number, start it at 1.
# `upstream' is not a part of `name' to stay fully rpm dependencies compatible for the testing.
-Release: 29%{?dist}
+Release: 30%{?dist}
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ and GPLv2+ with exceptions and GPL+ and LGPLv2+ and BSD and Public Domain and GFDL
Group: Development/Debuggers
@@ -245,7 +245,7 @@ Patch231: gdb-6.3-bz202689-exec-from-pthread-test.patch
# Backported fixups post the source tarball.
#Xdrop: Just backports.
-#Patch232: gdb-upstream.patch
+Patch232: gdb-upstream.patch
# Testcase for PPC Power6/DFP instructions disassembly (BZ 230000).
#=fedoratest+ppc
@@ -542,19 +542,14 @@ Patch927: gdb-python-gil.patch
# Fix jit-reader.h for multi-lib.
Patch978: gdb-jit-reader-multilib.patch
-# Fix 'Make the probes-based dynamic linker interface more robust to
-# errors' (Sergio Durigan Junior, RH BZ 1259132).
-Patch1029: gdb-probes-based-interface-robust-1of2.patch
-Patch1030: gdb-probes-based-interface-robust-2of2.patch
-
-# [ppc64le] Use skip_entrypoint for skip_trampoline_code (RH BZ 1260558).
-Patch1031: gdb-rhbz1260558-ppc64le-skip_trampoline_code.patch
-
# Fix the pahole command breakage due to its Python3 port (RH BZ 1264532).
Patch1044: gdb-pahole-python2.patch
-# Fix internal error on DW_OP_bregx(-1) (RH BZ 1270564).
-Patch1052: gdb-rhbz1270564-invalid-dwarf-regno.patch
+# Fix callframecfa.exp and typeddwarf.exp rebase regression.
+Patch1054: gdb-nonstop-scratchpad.patch
+
+# testsuite: Fortran: allocate()d memory is uninitialized.
+Patch1056: gdb-fortran-allocate-not-inited.patch
%if 0%{!?rhel:1} || 0%{?rhel} > 6
# RL_STATE_FEDORA_GDB would not be found for:
@@ -747,7 +742,7 @@ find -name "*.info*"|xargs rm -f
# Match the Fedora's version info.
%patch2 -p1
-#patch232 -p1
+%patch232 -p1
%patch349 -p1
%patch888 -p1
%patch983 -p1
@@ -851,10 +846,8 @@ find -name "*.info*"|xargs rm -f
%patch925 -p1
%patch927 -p1
%patch978 -p1
-%patch1029 -p1
-%patch1030 -p1
-%patch1031 -p1
-%patch1052 -p1
+%patch1054 -p1
+%patch1056 -p1
%patch848 -p1
%if 0%{!?el6:1}
@@ -1370,6 +1363,9 @@ then
fi
%changelog
+* Tue Nov 3 2015 Jan Kratochvil <jan.kratochvil@redhat.com> - 7.10.50.20151027-30.fc24
+- Rebase to FSF GDB 7.10.50.20151027 (trunk snapshot).
+
* Mon Oct 12 2015 Jan Kratochvil <jan.kratochvil@redhat.com> - 7.10-29.fc23
- Fix internal error on DW_OP_bregx(-1) (RH BZ 1270564).
diff --git a/sources b/sources
index 89188fb..bf7aa02 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
7ad32d3894aaf90d00a4343a735c3e1c gdb-libstdc++-v3-python-r225521.tar.xz
-2a35bac41fa8e10bf04f3a0dd7f7f363 gdb-7.10.tar.xz
+08819fb3e231bbd986695bb4edcd271d gdb-7.10.50.20151027.tar.xz
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2026-06-27 23:57 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-06-27 23:57 [rpms/gdb] gdb-17.2-rebase-f44: Rebase to FSF GDB 7.10.50.20151027 (trunk snapshot) Jan Kratochvil
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox