- Rebase to FSF GDB 7.2.50.20110117 (which is a 7.3 pre-release).

- Fix callback-mode readline-6.0 regression for CTRL-C (for RHEL-6.0).
  - Fix occasional NULL dereference of the readline-6.0 workaround (BZ 575516).
This commit is contained in:
Jan Kratochvil 2011-01-17 16:31:43 +01:00
parent a174f683ec
commit b0e03f562d
18 changed files with 1395 additions and 1628 deletions

2
.gitignore vendored
View File

@ -1,2 +1,2 @@
/gdb-7.2.50.20110107.tar.bz2
/libstdc++-v3-python-r155978.tar.bz2
/gdb-7.2.50.20110117.tar.bz2

View File

@ -6,10 +6,10 @@
use to skip over first half of a GNU/Linux syscall and update
"func_start".
Index: gdb-6.8.50.20090802/gdb/rs6000-tdep.c
Index: gdb-7.2.50.20110117/gdb/rs6000-tdep.c
===================================================================
--- gdb-6.8.50.20090802.orig/gdb/rs6000-tdep.c 2009-07-31 17:23:20.000000000 +0200
+++ gdb-6.8.50.20090802/gdb/rs6000-tdep.c 2009-08-03 09:52:39.000000000 +0200
--- gdb-7.2.50.20110117.orig/gdb/rs6000-tdep.c 2011-01-11 20:23:02.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/rs6000-tdep.c 2011-01-17 15:48:19.000000000 +0100
@@ -126,6 +126,7 @@ static const char *powerpc_vector_abi_st
struct rs6000_framedata
@ -18,7 +18,7 @@ Index: gdb-6.8.50.20090802/gdb/rs6000-tdep.c
int offset; /* total size of frame --- the distance
by which we decrement sp to allocate
the frame */
@@ -1488,7 +1489,6 @@ static CORE_ADDR
@@ -1496,7 +1497,6 @@ static CORE_ADDR
skip_prologue (struct gdbarch *gdbarch, CORE_ADDR pc, CORE_ADDR lim_pc,
struct rs6000_framedata *fdata)
{
@ -26,7 +26,7 @@ Index: gdb-6.8.50.20090802/gdb/rs6000-tdep.c
CORE_ADDR last_prologue_pc = pc;
CORE_ADDR li_found_pc = 0;
gdb_byte buf[4];
@@ -1506,12 +1506,14 @@ skip_prologue (struct gdbarch *gdbarch,
@@ -1514,12 +1514,14 @@ skip_prologue (struct gdbarch *gdbarch,
int minimal_toc_loaded = 0;
int prev_insn_was_prologue_insn = 1;
int num_skip_non_prologue_insns = 0;
@ -41,7 +41,7 @@ Index: gdb-6.8.50.20090802/gdb/rs6000-tdep.c
fdata->saved_gpr = -1;
fdata->saved_fpr = -1;
fdata->saved_vr = -1;
@@ -1545,6 +1547,55 @@ skip_prologue (struct gdbarch *gdbarch,
@@ -1553,6 +1555,55 @@ skip_prologue (struct gdbarch *gdbarch,
break;
op = extract_unsigned_integer (buf, 4, byte_order);
@ -97,7 +97,7 @@ Index: gdb-6.8.50.20090802/gdb/rs6000-tdep.c
if ((op & 0xfc1fffff) == 0x7c0802a6)
{ /* mflr Rx */
/* Since shared library / PIC code, which needs to get its
@@ -1726,9 +1777,9 @@ skip_prologue (struct gdbarch *gdbarch,
@@ -1734,9 +1785,9 @@ skip_prologue (struct gdbarch *gdbarch,
we have no line table information or the line info tells
us that the subroutine call is not part of the line
associated with the prologue. */
@ -108,4 +108,4 @@ Index: gdb-6.8.50.20090802/gdb/rs6000-tdep.c
+ struct symtab_and_line prologue_sal = find_pc_line (fdata->func_start, 0);
struct symtab_and_line this_sal = find_pc_line (pc, 0);
if ((prologue_sal.line == 0) || (prologue_sal.line != this_sal.line))
if ((prologue_sal.line == 0)

View File

@ -11,10 +11,10 @@
* gdb.texinfo (File Options): Document --readnever.
Index: gdb-7.2.50.20110107/gdb/doc/gdb.texinfo
Index: gdb-7.2.50.20110117/gdb/doc/gdb.texinfo
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/doc/gdb.texinfo 2011-01-07 09:03:38.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/doc/gdb.texinfo 2011-01-07 09:04:48.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/doc/gdb.texinfo 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/doc/gdb.texinfo 2011-01-17 15:50:41.000000000 +0100
@@ -1007,6 +1007,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.2.50.20110107/gdb/doc/gdb.texinfo
@end table
@node Mode Options
Index: gdb-7.2.50.20110107/gdb/main.c
Index: gdb-7.2.50.20110117/gdb/main.c
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/main.c 2011-01-07 09:04:39.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/main.c 2011-01-07 09:05:02.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/main.c 2011-01-17 15:50:21.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/main.c 2011-01-17 15:50:41.000000000 +0100
@@ -395,6 +395,7 @@ captured_main (void *data)
{"xdb", no_argument, &xdb_commands, 1},
{"dbx", no_argument, &dbx_commands, 1},
@ -40,7 +40,7 @@ Index: gdb-7.2.50.20110107/gdb/main.c
{"r", no_argument, &readnow_symbol_files, 1},
{"quiet", no_argument, &quiet, 1},
{"q", no_argument, &quiet, 1},
@@ -1060,6 +1061,7 @@ Options:\n\n\
@@ -1061,6 +1062,7 @@ Options:\n\n\
fputs_unfiltered (_("\
--quiet Do not print version number on startup.\n\
--readnow Fully read symbol files on first access.\n\
@ -48,22 +48,22 @@ Index: gdb-7.2.50.20110107/gdb/main.c
"), stream);
fputs_unfiltered (_("\
--se=FILE Use FILE as symbol file and executable file.\n\
Index: gdb-7.2.50.20110107/gdb/symfile.c
Index: gdb-7.2.50.20110117/gdb/symfile.c
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/symfile.c 2011-01-05 23:22:50.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/symfile.c 2011-01-07 09:04:48.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/symfile.c 2011-01-11 22:53:24.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/symfile.c 2011-01-17 15:50:53.000000000 +0100
@@ -81,6 +81,7 @@ static void clear_symtab_users_cleanup (
/* Global variables owned by this file */
int readnow_symbol_files; /* Read full symbols immediately */
/* Global variables owned by this file. */
int readnow_symbol_files; /* Read full symbols immediately. */
+int readnever_symbol_files; /* Never read full symbols. */
/* External variables and functions referenced. */
/* External variables and functions referenced. */
Index: gdb-7.2.50.20110107/gdb/dwarf2read.c
Index: gdb-7.2.50.20110117/gdb/dwarf2read.c
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/dwarf2read.c 2011-01-07 09:03:38.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/dwarf2read.c 2011-01-07 09:04:48.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/dwarf2read.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/dwarf2read.c 2011-01-17 15:50:41.000000000 +0100
@@ -57,6 +57,7 @@
#include "vec.h"
#include "c-lang.h"
@ -84,10 +84,10 @@ Index: gdb-7.2.50.20110107/gdb/dwarf2read.c
}
/* When loading sections, we can either look for ".<name>", or for
Index: gdb-7.2.50.20110107/gdb/top.h
Index: gdb-7.2.50.20110117/gdb/top.h
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/top.h 2011-01-01 16:33:18.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/top.h 2011-01-07 09:04:48.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/top.h 2011-01-01 16:33:18.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/top.h 2011-01-17 15:50:41.000000000 +0100
@@ -61,6 +61,7 @@ extern void set_prompt (char *);
/* From random places. */

View File

@ -1,7 +1,7 @@
Index: gdb-7.2.50.20101116/gdb/testsuite/configure.ac
Index: gdb-7.2.50.20110117/gdb/testsuite/configure.ac
===================================================================
--- gdb-7.2.50.20101116.orig/gdb/testsuite/configure.ac 2010-11-05 15:31:29.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/testsuite/configure.ac 2010-11-16 07:56:53.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/testsuite/configure.ac 2011-01-05 06:09:55.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/configure.ac 2011-01-17 15:50:03.000000000 +0100
@@ -144,6 +144,6 @@ AC_OUTPUT([Makefile \
gdb.cp/Makefile gdb.disasm/Makefile gdb.dwarf2/Makefile \
gdb.fortran/Makefile gdb.server/Makefile gdb.java/Makefile \
@ -10,31 +10,31 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/configure.ac
+ gdb.objc/Makefile gdb.opencl/Makefile gdb.opt/Makefile gdb.pascal/Makefile gdb.pie/Makefile \
gdb.python/Makefile gdb.reverse/Makefile \
gdb.threads/Makefile gdb.trace/Makefile gdb.xml/Makefile])
Index: gdb-7.2.50.20101116/gdb/testsuite/configure
Index: gdb-7.2.50.20110117/gdb/testsuite/configure
===================================================================
--- gdb-7.2.50.20101116.orig/gdb/testsuite/configure 2010-11-05 15:31:29.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/testsuite/configure 2010-11-16 07:57:59.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/testsuite/configure 2011-01-07 03:51:09.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/configure 2011-01-17 15:50:09.000000000 +0100
@@ -3515,7 +3515,7 @@ done
-ac_config_files="$ac_config_files Makefile gdb.ada/Makefile gdb.arch/Makefile gdb.asm/Makefile gdb.base/Makefile gdb.cp/Makefile gdb.disasm/Makefile gdb.dwarf2/Makefile gdb.fortran/Makefile gdb.server/Makefile gdb.java/Makefile gdb.mi/Makefile gdb.modula2/Makefile gdb.multi/Makefile gdb.objc/Makefile gdb.opt/Makefile gdb.pascal/Makefile gdb.python/Makefile gdb.reverse/Makefile gdb.threads/Makefile gdb.trace/Makefile gdb.xml/Makefile gdb.opencl/Makefile"
+ac_config_files="$ac_config_files Makefile gdb.ada/Makefile gdb.arch/Makefile gdb.asm/Makefile gdb.base/Makefile gdb.cp/Makefile gdb.disasm/Makefile gdb.dwarf2/Makefile gdb.fortran/Makefile gdb.server/Makefile gdb.java/Makefile gdb.mi/Makefile gdb.modula2/Makefile gdb.multi/Makefile gdb.objc/Makefile gdb.opt/Makefile gdb.pascal/Makefile gdb.pie/Makefile gdb.python/Makefile gdb.reverse/Makefile gdb.threads/Makefile gdb.trace/Makefile gdb.xml/Makefile gdb.opencl/Makefile"
-ac_config_files="$ac_config_files Makefile gdb.ada/Makefile gdb.arch/Makefile gdb.asm/Makefile gdb.base/Makefile gdb.cp/Makefile gdb.disasm/Makefile gdb.dwarf2/Makefile gdb.fortran/Makefile gdb.server/Makefile gdb.java/Makefile gdb.mi/Makefile gdb.modula2/Makefile gdb.multi/Makefile gdb.objc/Makefile gdb.opencl/Makefile gdb.opt/Makefile gdb.pascal/Makefile gdb.python/Makefile gdb.reverse/Makefile gdb.threads/Makefile gdb.trace/Makefile gdb.xml/Makefile"
+ac_config_files="$ac_config_files Makefile gdb.ada/Makefile gdb.arch/Makefile gdb.asm/Makefile gdb.base/Makefile gdb.cp/Makefile gdb.disasm/Makefile gdb.dwarf2/Makefile gdb.fortran/Makefile gdb.server/Makefile gdb.java/Makefile gdb.mi/Makefile gdb.modula2/Makefile gdb.multi/Makefile gdb.objc/Makefile gdb.opencl/Makefile gdb.opt/Makefile gdb.pascal/Makefile gdb.pie/Makefile gdb.python/Makefile gdb.reverse/Makefile gdb.threads/Makefile gdb.trace/Makefile gdb.xml/Makefile"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
@@ -4232,6 +4232,7 @@ do
"gdb.objc/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.objc/Makefile" ;;
@@ -4233,6 +4233,7 @@ do
"gdb.opencl/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.opencl/Makefile" ;;
"gdb.opt/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.opt/Makefile" ;;
"gdb.pascal/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.pascal/Makefile" ;;
+ "gdb.pie/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.pie/Makefile" ;;
"gdb.python/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.python/Makefile" ;;
"gdb.reverse/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.reverse/Makefile" ;;
"gdb.threads/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.threads/Makefile" ;;
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/attach.c
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/attach.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/attach.c 2010-11-16 07:56:34.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/attach.c 2011-01-17 15:50:03.000000000 +0100
@@ -0,0 +1,20 @@
+/* This program is intended to be started outside of gdb, and then
+ attached to by gdb. Thus, it simply spins in a loop. The loop
@ -56,10 +56,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/attach.c
+ }
+ return 0;
+}
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/attach2.c
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/attach2.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/attach2.c 2010-11-16 07:56:34.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/attach2.c 2011-01-17 15:50:03.000000000 +0100
@@ -0,0 +1,24 @@
+/* This program is intended to be started outside of gdb, and then
+ attached to by gdb. Thus, it simply spins in a loop. The loop
@ -85,10 +85,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/attach2.c
+ }
+ return (0);
+}
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/break.c
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/break.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/break.c 2010-11-16 07:56:34.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/break.c 2011-01-17 15:50:03.000000000 +0100
@@ -0,0 +1,146 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@ -236,10 +236,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/break.c
+ }
+ return 0;
+}
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/break1.c
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/break1.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/break1.c 2010-11-16 07:56:34.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/break1.c 2011-01-17 15:50:03.000000000 +0100
@@ -0,0 +1,44 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@ -285,10 +285,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/break1.c
+void marker3 (a, b) char *a, *b; {} /* set breakpoint 18 here */
+void marker4 (d) long d; {} /* set breakpoint 13 here */
+#endif
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/coremaker.c
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/coremaker.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/coremaker.c 2010-11-16 07:56:34.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/coremaker.c 2011-01-17 15:50:03.000000000 +0100
@@ -0,0 +1,142 @@
+/* Copyright 1992, 1993, 1994, 1995, 1996, 1999
+ Free Software Foundation, Inc.
@ -432,10 +432,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/coremaker.c
+ return 0;
+}
+
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/attach.exp
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/attach.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/attach.exp 2010-11-16 07:56:34.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/attach.exp 2011-01-17 15:50:03.000000000 +0100
@@ -0,0 +1,423 @@
+# Copyright 1997, 1999, 2002 Free Software Foundation, Inc.
+
@ -860,10 +860,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/attach.exp
+do_call_attach_tests
+
+return 0
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/break.exp
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/break.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/break.exp 2010-11-16 07:56:34.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/break.exp 2011-01-17 15:50:03.000000000 +0100
@@ -0,0 +1,966 @@
+# Copyright 1988, 1990, 1991, 1992, 1994, 1995, 1996, 1997, 1998, 1999,
+# 2000, 2002, 2003, 2004
@ -1831,10 +1831,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/break.exp
+ send_gdb "set args main\n"
+ gdb_expect -re ".*$gdb_prompt $" {}
+}
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/corefile.exp
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/corefile.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/corefile.exp 2010-11-16 07:56:34.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/corefile.exp 2011-01-17 15:50:03.000000000 +0100
@@ -0,0 +1,233 @@
+# Copyright 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
+# Free Software Foundation, Inc.
@ -2069,10 +2069,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/corefile.exp
+gdb_test "up" "#\[0-9\]* *\[0-9xa-fH'\]* in .* \\(.*\\).*" "up in corefile.exp (reinit)"
+
+gdb_test "core" "No core file now."
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/Makefile.in
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/Makefile.in
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/Makefile.in 2010-11-16 07:56:34.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/Makefile.in 2011-01-17 15:50:03.000000000 +0100
@@ -0,0 +1,19 @@
+VPATH = @srcdir@
+srcdir = @srcdir@

View File

@ -1,13 +1,13 @@
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=218379
Index: gdb-7.2.50.20110107/gdb/symtab.c
Index: gdb-7.2.50.20110117/gdb/symtab.c
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/symtab.c 2011-01-07 09:03:38.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/symtab.c 2011-01-07 09:06:32.000000000 +0100
@@ -2014,6 +2014,13 @@ find_pc_sect_line (CORE_ADDR pc, struct
/* warning ("In stub for %s; unable to find real function/line info",
SYMBOL_LINKAGE_NAME (msymbol)) */ ;
--- gdb-7.2.50.20110117.orig/gdb/symtab.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/symtab.c 2011-01-17 15:51:48.000000000 +0100
@@ -2015,6 +2015,13 @@ find_pc_sect_line (CORE_ADDR pc, struct
SYMBOL_LINKAGE_NAME (msymbol)); */
;
/* fall through */
+ /* `msymbol' trampoline may be located before its .text symbol
+ but this text symbol may be the address we were looking for.

View File

@ -1,7 +1,7 @@
Index: gdb-7.2.50.20110107/gdb/corelow.c
Index: gdb-7.2.50.20110117/gdb/corelow.c
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/corelow.c 2011-01-05 23:22:47.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/corelow.c 2011-01-07 09:07:01.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/corelow.c 2011-01-05 23:22:47.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/corelow.c 2011-01-17 15:52:06.000000000 +0100
@@ -47,6 +47,9 @@
#include "filenames.h"
#include "progspace.h"
@ -90,11 +90,11 @@ Index: gdb-7.2.50.20110107/gdb/corelow.c
+ NULL, NULL, NULL,
+ &setlist, &showlist);
}
Index: gdb-7.2.50.20110107/gdb/doc/gdb.texinfo
Index: gdb-7.2.50.20110117/gdb/doc/gdb.texinfo
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/doc/gdb.texinfo 2011-01-07 09:04:48.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/doc/gdb.texinfo 2011-01-07 09:07:01.000000000 +0100
@@ -15277,6 +15277,27 @@ information files.
--- gdb-7.2.50.20110117.orig/gdb/doc/gdb.texinfo 2011-01-17 15:50:41.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/doc/gdb.texinfo 2011-01-17 15:52:06.000000000 +0100
@@ -15220,6 +15220,27 @@ information files.
@end table
@ -122,10 +122,10 @@ Index: gdb-7.2.50.20110107/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.2.50.20110107/gdb/solib-svr4.c
Index: gdb-7.2.50.20110117/gdb/solib-svr4.c
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/solib-svr4.c 2011-01-07 09:03:38.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/solib-svr4.c 2011-01-07 09:07:01.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/solib-svr4.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/solib-svr4.c 2011-01-17 15:52:06.000000000 +0100
@@ -1179,9 +1179,49 @@ svr4_current_sos (void)
safe_strerror (errcode));
else
@ -179,10 +179,10 @@ Index: gdb-7.2.50.20110107/gdb/solib-svr4.c
}
xfree (buffer);
Index: gdb-7.2.50.20110107/gdb/elfread.c
Index: gdb-7.2.50.20110117/gdb/elfread.c
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/elfread.c 2011-01-07 09:03:38.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/elfread.c 2011-01-07 09:07:33.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/elfread.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/elfread.c 2011-01-17 15:52:06.000000000 +0100
@@ -38,6 +38,10 @@
#include "demangle.h"
#include "psympriv.h"
@ -911,10 +911,10 @@ Index: gdb-7.2.50.20110107/gdb/elfread.c
+
+ observer_attach_executable_changed (debug_print_executable_changed);
}
Index: gdb-7.2.50.20110107/gdb/symfile.h
Index: gdb-7.2.50.20110117/gdb/symfile.h
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/symfile.h 2011-01-05 23:22:53.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/symfile.h 2011-01-07 09:07:01.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/symfile.h 2011-01-11 22:53:24.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/symfile.h 2011-01-17 15:52:06.000000000 +0100
@@ -554,6 +554,13 @@ void free_symfile_segment_data (struct s
extern struct cleanup *increment_reading_symtab (void);
@ -929,11 +929,11 @@ Index: gdb-7.2.50.20110107/gdb/symfile.h
/* From dwarf2read.c */
extern int dwarf2_has_info (struct objfile *);
Index: gdb-7.2.50.20110107/gdb/testsuite/lib/gdb.exp
Index: gdb-7.2.50.20110117/gdb/testsuite/lib/gdb.exp
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/testsuite/lib/gdb.exp 2011-01-07 09:03:38.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/testsuite/lib/gdb.exp 2011-01-07 09:07:01.000000000 +0100
@@ -1391,6 +1391,16 @@ proc default_gdb_start { } {
--- gdb-7.2.50.20110117.orig/gdb/testsuite/lib/gdb.exp 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/lib/gdb.exp 2011-01-17 15:52:06.000000000 +0100
@@ -1395,6 +1395,16 @@ proc default_gdb_start { } {
warning "Couldn't set the width to 0."
}
}
@ -950,10 +950,10 @@ Index: gdb-7.2.50.20110107/gdb/testsuite/lib/gdb.exp
return 0;
}
Index: gdb-7.2.50.20110107/gdb/testsuite/lib/mi-support.exp
Index: gdb-7.2.50.20110117/gdb/testsuite/lib/mi-support.exp
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/testsuite/lib/mi-support.exp 2011-01-01 16:33:52.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/testsuite/lib/mi-support.exp 2011-01-07 09:07:01.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/testsuite/lib/mi-support.exp 2011-01-01 16:33:52.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/lib/mi-support.exp 2011-01-17 15:52:06.000000000 +0100
@@ -221,6 +221,16 @@ proc default_mi_gdb_start { args } {
}
}
@ -971,10 +971,10 @@ Index: gdb-7.2.50.20110107/gdb/testsuite/lib/mi-support.exp
detect_async
Index: gdb-7.2.50.20110107/gdb/objfiles.h
Index: gdb-7.2.50.20110117/gdb/objfiles.h
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/objfiles.h 2011-01-05 23:22:49.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/objfiles.h 2011-01-07 09:07:01.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/objfiles.h 2011-01-10 21:38:49.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/objfiles.h 2011-01-17 15:52:26.000000000 +0100
@@ -434,6 +434,10 @@ struct objfile
#define OBJF_USERLOADED (1 << 3) /* User loaded */
@ -984,5 +984,5 @@ Index: gdb-7.2.50.20110107/gdb/objfiles.h
+#define OBJF_BUILD_ID_CORE_LOADED (1 << 12)
+
/* The object file that contains the runtime common minimal symbols
for SunOS4. Note that this objfile has no associated BFD. */
for SunOS4. Note that this objfile has no associated BFD. */

View File

@ -21,10 +21,10 @@
Port to GDB-6.8pre.
Index: gdb-7.2.50.20101231/gdb/inferior.h
Index: gdb-7.2.50.20110117/gdb/inferior.h
===================================================================
--- gdb-7.2.50.20101231.orig/gdb/inferior.h 2011-01-01 01:25:01.000000000 +0100
+++ gdb-7.2.50.20101231/gdb/inferior.h 2011-01-01 01:25:16.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/inferior.h 2011-01-09 04:08:56.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/inferior.h 2011-01-17 15:48:39.000000000 +0100
@@ -186,7 +186,15 @@ extern void reopen_exec_file (void);
/* The `resume' routine should only be called in special circumstances.
Normally, use `proceed', which handles a lot of bookkeeping. */
@ -42,10 +42,10 @@ Index: gdb-7.2.50.20101231/gdb/inferior.h
/* From misc files */
Index: gdb-7.2.50.20101231/gdb/infrun.c
Index: gdb-7.2.50.20110117/gdb/infrun.c
===================================================================
--- gdb-7.2.50.20101231.orig/gdb/infrun.c 2011-01-01 01:25:01.000000000 +0100
+++ gdb-7.2.50.20101231/gdb/infrun.c 2011-01-01 01:25:29.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/infrun.c 2011-01-09 04:08:56.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/infrun.c 2011-01-17 15:49:40.000000000 +0100
@@ -76,7 +76,7 @@ static int follow_fork (void);
static void set_schedlock_func (char *args, int from_tty,
struct cmd_list_element *c);
@ -55,7 +55,7 @@ Index: gdb-7.2.50.20101231/gdb/infrun.c
static int currently_stepping_or_nexting_callback (struct thread_info *tp,
void *data);
@@ -1570,7 +1570,7 @@ maybe_software_singlestep (struct gdbarc
@@ -1577,7 +1577,7 @@ maybe_software_singlestep (struct gdbarc
STEP nonzero if we should step (zero to continue instead).
SIG is the signal to give the inferior (zero for none). */
void
@ -64,7 +64,7 @@ Index: gdb-7.2.50.20101231/gdb/infrun.c
{
int should_resume = 1;
struct cleanup *old_cleanups = make_cleanup (resume_cleanups, 0);
@@ -1602,10 +1602,12 @@ resume (int step, enum target_signal sig
@@ -1609,10 +1609,12 @@ resume (int step, enum target_signal sig
}
if (debug_infrun)
@ -81,7 +81,7 @@ Index: gdb-7.2.50.20101231/gdb/infrun.c
/* Normally, by the time we reach `resume', the breakpoints are either
removed or inserted, as appropriate. The exception is if we're sitting
@@ -1723,9 +1725,10 @@ a command like `return' or `jump' to con
@@ -1730,9 +1732,10 @@ a command like `return' or `jump' to con
individually. */
resume_ptid = inferior_ptid;
}
@ -92,9 +92,9 @@ Index: gdb-7.2.50.20101231/gdb/infrun.c
+ && (step == RESUME_STEP_USER
+ || singlestep_breakpoints_inserted_p)))
{
/* User-settable 'scheduler' mode requires solo thread resume. */
/* User-settable 'scheduler' mode requires solo thread resume. */
resume_ptid = inferior_ptid;
@@ -1934,7 +1937,7 @@ proceed (CORE_ADDR addr, enum target_sig
@@ -1941,7 +1944,7 @@ proceed (CORE_ADDR addr, enum target_sig
struct thread_info *tp;
CORE_ADDR pc;
struct address_space *aspace;
@ -103,7 +103,7 @@ Index: gdb-7.2.50.20101231/gdb/infrun.c
/* If we're stopped at a fork/vfork, follow the branch set by the
"set follow-fork-mode" command; otherwise, we'll just proceed
@@ -1969,13 +1972,13 @@ proceed (CORE_ADDR addr, enum target_sig
@@ -1976,13 +1979,13 @@ proceed (CORE_ADDR addr, enum target_sig
actually be executing the breakpoint insn anyway.
We'll be (un-)executing the previous instruction. */
@ -119,9 +119,9 @@ Index: gdb-7.2.50.20101231/gdb/infrun.c
}
else
{
@@ -2016,13 +2019,13 @@ proceed (CORE_ADDR addr, enum target_sig
@@ -2023,13 +2026,13 @@ proceed (CORE_ADDR addr, enum target_sig
is required it returns TRUE and sets the current thread to
the old thread. */
the old thread. */
if (prepare_to_proceed (step))
- oneproc = 1;
+ resume_step = RESUME_STEP_USER;
@ -135,7 +135,7 @@ Index: gdb-7.2.50.20101231/gdb/infrun.c
{
tp->control.trap_expected = 1;
/* If displaced stepping is enabled, we can step over the
@@ -2109,8 +2112,13 @@ proceed (CORE_ADDR addr, enum target_sig
@@ -2116,8 +2119,13 @@ proceed (CORE_ADDR addr, enum target_sig
/* Reset to normal state. */
init_infwait_state ();
@ -150,7 +150,7 @@ Index: gdb-7.2.50.20101231/gdb/infrun.c
/* Wait for it to stop (if not standalone)
and in any case decode why it stopped, and act accordingly. */
@@ -4933,14 +4941,19 @@ infrun: not switching back to stepped th
@@ -4957,14 +4965,19 @@ process_event_stop_test:
/* Is thread TP in the middle of single-stepping? */
@ -176,11 +176,11 @@ Index: gdb-7.2.50.20101231/gdb/infrun.c
}
/* Returns true if any thread *but* the one passed in "data" is in the
Index: gdb-7.2.50.20101231/gdb/linux-nat.c
Index: gdb-7.2.50.20110117/gdb/linux-nat.c
===================================================================
--- gdb-7.2.50.20101231.orig/gdb/linux-nat.c 2011-01-01 01:25:16.000000000 +0100
+++ gdb-7.2.50.20101231/gdb/linux-nat.c 2011-01-01 01:25:16.000000000 +0100
@@ -2908,7 +2908,10 @@ count_events_callback (struct lwp_info *
--- gdb-7.2.50.20110117.orig/gdb/linux-nat.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/linux-nat.c 2011-01-17 15:48:39.000000000 +0100
@@ -2928,7 +2928,10 @@ count_events_callback (struct lwp_info *
static int
select_singlestep_lwp_callback (struct lwp_info *lp, void *data)
{
@ -192,10 +192,10 @@ Index: gdb-7.2.50.20101231/gdb/linux-nat.c
return 1;
else
return 0;
Index: gdb-7.2.50.20101231/gdb/linux-nat.h
Index: gdb-7.2.50.20110117/gdb/linux-nat.h
===================================================================
--- gdb-7.2.50.20101231.orig/gdb/linux-nat.h 2011-01-01 01:25:16.000000000 +0100
+++ gdb-7.2.50.20101231/gdb/linux-nat.h 2011-01-01 01:25:16.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/linux-nat.h 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/linux-nat.h 2011-01-17 15:48:39.000000000 +0100
@@ -55,8 +55,8 @@ struct lwp_info
/* If non-zero, a pending wait status. */
int status;

View File

@ -5,10 +5,10 @@ Some of the threads may not be properly PTRACE_DETACHed which hurts if they
should have been detached with SIGSTOP (as they are accidentally left running
on the debugger termination).
Index: gdb-7.2.50.20101231/gdb/defs.h
Index: gdb-7.2.50.20110117/gdb/defs.h
===================================================================
--- gdb-7.2.50.20101231.orig/gdb/defs.h 2011-01-01 01:00:29.000000000 +0100
+++ gdb-7.2.50.20101231/gdb/defs.h 2011-01-01 01:09:17.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/defs.h 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/defs.h 2011-01-17 15:53:05.000000000 +0100
@@ -165,6 +165,7 @@ extern char *python_libdir;
extern char *debug_file_directory;
@ -18,7 +18,7 @@ Index: gdb-7.2.50.20101231/gdb/defs.h
extern int sevenbit_strings;
@@ -178,7 +179,7 @@ extern void quit (void);
needed. */
needed. */
#define QUIT { \
- if (quit_flag) quit (); \
@ -26,10 +26,10 @@ Index: gdb-7.2.50.20101231/gdb/defs.h
if (deprecated_interactive_hook) deprecated_interactive_hook (); \
}
Index: gdb-7.2.50.20101231/gdb/event-top.c
Index: gdb-7.2.50.20110117/gdb/event-top.c
===================================================================
--- gdb-7.2.50.20101231.orig/gdb/event-top.c 2011-01-01 01:07:37.000000000 +0100
+++ gdb-7.2.50.20101231/gdb/event-top.c 2011-01-01 01:09:39.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/event-top.c 2011-01-17 15:52:39.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/event-top.c 2011-01-17 15:52:49.000000000 +0100
@@ -904,7 +904,7 @@ async_request_quit (gdb_client_data arg)
is no reason to call quit again here, unless immediate_quit is
set. */
@ -39,11 +39,11 @@ Index: gdb-7.2.50.20101231/gdb/event-top.c
quit ();
}
Index: gdb-7.2.50.20101231/gdb/top.c
Index: gdb-7.2.50.20110117/gdb/top.c
===================================================================
--- gdb-7.2.50.20101231.orig/gdb/top.c 2011-01-01 01:00:29.000000000 +0100
+++ gdb-7.2.50.20101231/gdb/top.c 2011-01-01 01:09:17.000000000 +0100
@@ -1254,7 +1254,9 @@ quit_force (char *args, int from_tty)
--- gdb-7.2.50.20110117.orig/gdb/top.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/top.c 2011-01-17 15:52:49.000000000 +0100
@@ -1257,7 +1257,9 @@ quit_force (char *args, int from_tty)
qt.args = args;
qt.from_tty = from_tty;
@ -54,10 +54,10 @@ Index: gdb-7.2.50.20101231/gdb/top.c
catch_errors (quit_target, &qt,
"Quitting: ", RETURN_MASK_ALL);
Index: gdb-7.2.50.20101231/gdb/utils.c
Index: gdb-7.2.50.20110117/gdb/utils.c
===================================================================
--- gdb-7.2.50.20101231.orig/gdb/utils.c 2011-01-01 01:00:29.000000000 +0100
+++ gdb-7.2.50.20101231/gdb/utils.c 2011-01-01 01:09:17.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/utils.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/utils.c 2011-01-17 15:52:49.000000000 +0100
@@ -121,6 +121,11 @@ int job_control;
int quit_flag;

View File

@ -1,8 +1,8 @@
Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
Index: gdb-7.2.50.20110117/gdb/dwarf2read.c
===================================================================
--- gdb-7.2.50.20101116.orig/gdb/dwarf2read.c 2010-11-16 08:25:21.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/dwarf2read.c 2010-11-16 08:26:35.000000000 +0100
@@ -7325,7 +7325,12 @@ read_common_block (struct die_info *die,
--- gdb-7.2.50.20110117.orig/gdb/dwarf2read.c 2011-01-17 15:56:23.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/dwarf2read.c 2011-01-17 16:00:14.000000000 +0100
@@ -7475,7 +7475,12 @@ read_common_block (struct die_info *die,
{
struct attribute *attr;
struct symbol *sym;
@ -16,7 +16,7 @@ Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
attr = dwarf2_attr (die, DW_AT_location, cu);
if (attr)
@@ -7334,6 +7339,7 @@ read_common_block (struct die_info *die,
@@ -7484,6 +7489,7 @@ read_common_block (struct die_info *die,
if (attr_form_is_block (attr))
{
base = decode_locdesc (DW_BLOCK (attr), cu);
@ -24,7 +24,7 @@ Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
}
else if (attr_form_is_section_offset (attr))
{
@@ -7395,12 +7401,15 @@ read_common_block (struct die_info *die,
@@ -7545,12 +7551,15 @@ read_common_block (struct die_info *die,
else
dwarf2_complex_location_expr_complaint ();
@ -42,7 +42,7 @@ Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
else
SET_FIELD_PHYSNAME (*field, SYMBOL_LINKAGE_NAME (sym));
FIELD_TYPE (*field) = SYMBOL_TYPE (sym);
@@ -7414,7 +7423,7 @@ read_common_block (struct die_info *die,
@@ -7564,7 +7573,7 @@ read_common_block (struct die_info *die,
sym = new_symbol (die, type, cu);
/* SYMBOL_VALUE_ADDRESS never gets used as all its fields are static. */
@ -51,11 +51,11 @@ Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
set_die_type (die, type, cu);
}
Index: gdb-7.2.50.20101116/gdb/gdbtypes.h
Index: gdb-7.2.50.20110117/gdb/gdbtypes.h
===================================================================
--- gdb-7.2.50.20101116.orig/gdb/gdbtypes.h 2010-11-16 08:01:33.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/gdbtypes.h 2010-11-16 08:26:35.000000000 +0100
@@ -395,6 +395,7 @@ enum type_instance_flag_value
--- gdb-7.2.50.20110117.orig/gdb/gdbtypes.h 2011-01-17 15:51:03.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/gdbtypes.h 2011-01-17 16:00:32.000000000 +0100
@@ -394,6 +394,7 @@ enum type_instance_flag_value
enum field_loc_kind
{
FIELD_LOC_KIND_BITPOS, /* bitpos */
@ -65,13 +65,13 @@ Index: gdb-7.2.50.20101116/gdb/gdbtypes.h
};
@@ -576,6 +577,7 @@ struct main_type
is the location (in the target) of the static field.
Otherwise, physname is the mangled label of the static field. */
Otherwise, physname is the mangled label of the static field. */
+ /* This address is unrelocated by the objfile's ANOFFSET. */
CORE_ADDR physaddr;
char *physname;
}
@@ -1101,6 +1103,7 @@ extern void allocate_gnat_aux_type (stru
@@ -1102,6 +1104,7 @@ extern void allocate_gnat_aux_type (stru
#define FIELD_LOC_KIND(thisfld) ((thisfld).loc_kind)
#define FIELD_BITPOS(thisfld) ((thisfld).loc.bitpos)
#define FIELD_STATIC_PHYSNAME(thisfld) ((thisfld).loc.physname)
@ -79,7 +79,7 @@ Index: gdb-7.2.50.20101116/gdb/gdbtypes.h
#define FIELD_STATIC_PHYSADDR(thisfld) ((thisfld).loc.physaddr)
#define SET_FIELD_BITPOS(thisfld, bitpos) \
(FIELD_LOC_KIND (thisfld) = FIELD_LOC_KIND_BITPOS, \
@@ -1108,6 +1111,7 @@ extern void allocate_gnat_aux_type (stru
@@ -1109,6 +1112,7 @@ extern void allocate_gnat_aux_type (stru
#define SET_FIELD_PHYSNAME(thisfld, name) \
(FIELD_LOC_KIND (thisfld) = FIELD_LOC_KIND_PHYSNAME, \
FIELD_STATIC_PHYSNAME (thisfld) = (name))
@ -87,7 +87,7 @@ Index: gdb-7.2.50.20101116/gdb/gdbtypes.h
#define SET_FIELD_PHYSADDR(thisfld, addr) \
(FIELD_LOC_KIND (thisfld) = FIELD_LOC_KIND_PHYSADDR, \
FIELD_STATIC_PHYSADDR (thisfld) = (addr))
@@ -1120,6 +1124,7 @@ extern void allocate_gnat_aux_type (stru
@@ -1121,6 +1125,7 @@ extern void allocate_gnat_aux_type (stru
#define TYPE_FIELD_LOC_KIND(thistype, n) FIELD_LOC_KIND (TYPE_FIELD (thistype, n))
#define TYPE_FIELD_BITPOS(thistype, n) FIELD_BITPOS (TYPE_FIELD (thistype, n))
#define TYPE_FIELD_STATIC_PHYSNAME(thistype, n) FIELD_STATIC_PHYSNAME (TYPE_FIELD (thistype, n))
@ -95,21 +95,21 @@ Index: gdb-7.2.50.20101116/gdb/gdbtypes.h
#define TYPE_FIELD_STATIC_PHYSADDR(thistype, n) FIELD_STATIC_PHYSADDR (TYPE_FIELD (thistype, n))
#define TYPE_FIELD_ARTIFICIAL(thistype, n) FIELD_ARTIFICIAL(TYPE_FIELD(thistype,n))
#define TYPE_FIELD_BITSIZE(thistype, n) FIELD_BITSIZE(TYPE_FIELD(thistype,n))
Index: gdb-7.2.50.20101116/gdb/jv-lang.c
Index: gdb-7.2.50.20110117/gdb/jv-lang.c
===================================================================
--- gdb-7.2.50.20101116.orig/gdb/jv-lang.c 2010-08-09 21:42:47.000000000 +0200
+++ gdb-7.2.50.20101116/gdb/jv-lang.c 2010-11-16 08:26:35.000000000 +0100
@@ -409,7 +409,8 @@ java_link_class_type (struct gdbarch *gd
--- gdb-7.2.50.20110117.orig/gdb/jv-lang.c 2011-01-09 04:08:57.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/jv-lang.c 2011-01-17 16:00:59.000000000 +0100
@@ -414,7 +414,8 @@ java_link_class_type (struct gdbarch *gd
fields = NULL;
nfields--; /* First set up dummy "class" field. */
nfields--; /* First set up dummy "class" field. */
- SET_FIELD_PHYSADDR (TYPE_FIELD (type, nfields), value_address (clas));
+ SET_FIELD_PHYSADDR (TYPE_FIELD (type, nfields), value_address (clas)
+ - (TYPE_OBJFILE (type) == NULL ? 0 : ANOFFSET (TYPE_OBJFILE (type)->section_offsets, SECT_OFF_TEXT (TYPE_OBJFILE (type)))));
TYPE_FIELD_NAME (type, nfields) = "class";
TYPE_FIELD_TYPE (type, nfields) = value_type (clas);
SET_TYPE_FIELD_PRIVATE (type, nfields);
@@ -457,7 +458,8 @@ java_link_class_type (struct gdbarch *gd
@@ -462,7 +463,8 @@ java_link_class_type (struct gdbarch *gd
SET_TYPE_FIELD_PROTECTED (type, i);
}
if (accflags & 0x0008) /* ACC_STATIC */
@ -119,11 +119,11 @@ Index: gdb-7.2.50.20101116/gdb/jv-lang.c
else
TYPE_FIELD_BITPOS (type, i) = 8 * boffset;
if (accflags & 0x8000) /* FIELD_UNRESOLVED_FLAG */
Index: gdb-7.2.50.20101116/gdb/value.c
Index: gdb-7.2.50.20110117/gdb/value.c
===================================================================
--- gdb-7.2.50.20101116.orig/gdb/value.c 2010-11-16 07:54:00.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/value.c 2010-11-16 08:26:35.000000000 +0100
@@ -1965,7 +1965,8 @@ value_static_field (struct type *type, i
--- gdb-7.2.50.20110117.orig/gdb/value.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/value.c 2011-01-17 16:00:14.000000000 +0100
@@ -1997,7 +1997,8 @@ value_static_field (struct type *type, i
{
case FIELD_LOC_KIND_PHYSADDR:
retval = value_at_lazy (TYPE_FIELD_TYPE (type, fieldno),

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
Index: gdb-7.1.90.20100711/gdb/config/i386/linux64.mh
Index: gdb-7.2.50.20110117/gdb/config/i386/linux64.mh
===================================================================
--- gdb-7.1.90.20100711.orig/gdb/config/i386/linux64.mh 2010-05-28 20:50:31.000000000 +0200
+++ gdb-7.1.90.20100711/gdb/config/i386/linux64.mh 2010-07-13 19:02:54.000000000 +0200
--- gdb-7.2.50.20110117.orig/gdb/config/i386/linux64.mh 2010-05-28 20:50:31.000000000 +0200
+++ gdb-7.2.50.20110117/gdb/config/i386/linux64.mh 2011-01-17 16:01:48.000000000 +0100
@@ -2,7 +2,7 @@
NATDEPFILES= inf-ptrace.o fork-child.o \
i386-nat.o amd64-nat.o amd64-linux-nat.o linux-nat.o \
@ -11,10 +11,10 @@ Index: gdb-7.1.90.20100711/gdb/config/i386/linux64.mh
NAT_CDEPS = $(srcdir)/proc-service.list
# The dynamically loaded libthread_db needs access to symbols in the
Index: gdb-7.1.90.20100711/gdb/config/i386/nm-linux64.h
Index: gdb-7.2.50.20110117/gdb/config/i386/nm-linux64.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.1.90.20100711/gdb/config/i386/nm-linux64.h 2010-07-13 19:02:28.000000000 +0200
+++ gdb-7.2.50.20110117/gdb/config/i386/nm-linux64.h 2011-01-17 16:01:48.000000000 +0100
@@ -0,0 +1,28 @@
+/* Native support for GNU/Linux amd64.
+
@ -44,11 +44,11 @@ Index: gdb-7.1.90.20100711/gdb/config/i386/nm-linux64.h
+#define target_can_use_hardware_watchpoint(type, cnt, ot) 1
+
+#endif /* NM_LINUX64_H */
Index: gdb-7.1.90.20100711/gdb/target.h
Index: gdb-7.2.50.20110117/gdb/target.h
===================================================================
--- gdb-7.1.90.20100711.orig/gdb/target.h 2010-07-12 23:07:34.000000000 +0200
+++ gdb-7.1.90.20100711/gdb/target.h 2010-07-13 19:02:28.000000000 +0200
@@ -1298,8 +1298,10 @@ extern char *normal_pid_to_str (ptid_t p
--- gdb-7.2.50.20110117.orig/gdb/target.h 2011-01-14 14:47:15.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/target.h 2011-01-17 16:02:08.000000000 +0100
@@ -1318,8 +1318,10 @@ extern char *normal_pid_to_str (ptid_t p
bp_hardware_breakpoint. CNT is the number of such watchpoints used so far
(including this one?). OTHERTYPE is who knows what... */
@ -57,12 +57,12 @@ Index: gdb-7.1.90.20100711/gdb/target.h
(*current_target.to_can_use_hw_breakpoint) (TYPE, CNT, OTHERTYPE);
+#endif
#define target_region_ok_for_hw_watchpoint(addr, len) \
(*current_target.to_region_ok_for_hw_watchpoint) (addr, len)
Index: gdb-7.1.90.20100711/gdb/testsuite/gdb.base/watchpoint-hw-before-run.exp
/* Returns the number of debug registers needed to watch the given
memory region, or zero if not supported. */
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.base/watchpoint-hw-before-run.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.1.90.20100711/gdb/testsuite/gdb.base/watchpoint-hw-before-run.exp 2010-07-13 19:02:28.000000000 +0200
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.base/watchpoint-hw-before-run.exp 2011-01-17 16:01:48.000000000 +0100
@@ -0,0 +1,40 @@
+# Copyright 2009, 2010 Free Software Foundation, Inc.
+

View File

@ -78,11 +78,11 @@ gdb/testsuite/
* gdb.threads/sigstep-threads.exp: New file.
* gdb.threads/sigstep-threads.c: New file.
Index: gdb-7.2.50.20101116/gdb/linux-nat.c
Index: gdb-7.2.50.20110117/gdb/linux-nat.c
===================================================================
--- gdb-7.2.50.20101116.orig/gdb/linux-nat.c 2010-11-16 08:21:46.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/linux-nat.c 2010-11-16 09:12:26.000000000 +0100
@@ -2759,6 +2759,8 @@ stop_wait_callback (struct lwp_info *lp,
--- gdb-7.2.50.20110117.orig/gdb/linux-nat.c 2011-01-17 15:53:14.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/linux-nat.c 2011-01-17 16:05:57.000000000 +0100
@@ -2803,6 +2803,8 @@ stop_wait_callback (struct lwp_info *lp,
{
int status;
@ -91,7 +91,7 @@ Index: gdb-7.2.50.20101116/gdb/linux-nat.c
status = wait_lwp (lp);
if (status == 0)
return 0;
@@ -2783,110 +2785,61 @@ stop_wait_callback (struct lwp_info *lp,
@@ -2828,110 +2830,61 @@ stop_wait_callback (struct lwp_info *lp,
if (WSTOPSIG (status) != SIGSTOP)
{
@ -115,7 +115,7 @@ Index: gdb-7.2.50.20101116/gdb/linux-nat.c
-
- save_sigtrap (lp);
-
- /* Now resume this LWP and get the SIGSTOP event. */
- /* Now resume this LWP and get the SIGSTOP event. */
- errno = 0;
- ptrace (PTRACE_CONT, GET_LWP (lp->ptid), 0, 0);
- if (debug_linux_nat)
@ -130,13 +130,13 @@ Index: gdb-7.2.50.20101116/gdb/linux-nat.c
- target_pid_to_str (lp->ptid));
- }
- /* Hold this event/waitstatus while we check to see if
- there are any more (we still want to get that SIGSTOP). */
- there are any more (we still want to get that SIGSTOP). */
- stop_wait_callback (lp, NULL);
+ /* The thread was stopped with a signal other than SIGSTOP. */
- /* Hold the SIGTRAP for handling by linux_nat_wait. If
- there's another event, throw it back into the
- queue. */
- queue. */
- if (lp->status)
- {
- if (debug_linux_nat)
@ -149,14 +149,14 @@ Index: gdb-7.2.50.20101116/gdb/linux-nat.c
+ /* Save the trap's siginfo in case we need it later. */
+ save_siginfo (lp);
- /* Save the sigtrap event. */
- /* Save the sigtrap event. */
- lp->status = status;
- return 0;
- }
- else
- {
- /* The thread was stopped with a signal other than
- SIGSTOP, and didn't accidentally trip a breakpoint. */
- SIGSTOP, and didn't accidentally trip a breakpoint. */
+ save_sigtrap (lp);
- if (debug_linux_nat)
@ -166,7 +166,7 @@ Index: gdb-7.2.50.20101116/gdb/linux-nat.c
- status_to_str ((int) status),
- target_pid_to_str (lp->ptid));
- }
- /* Now resume this LWP and get the SIGSTOP event. */
- /* Now resume this LWP and get the SIGSTOP event. */
- errno = 0;
- ptrace (PTRACE_CONT, GET_LWP (lp->ptid), 0, 0);
- if (debug_linux_nat)
@ -176,7 +176,7 @@ Index: gdb-7.2.50.20101116/gdb/linux-nat.c
- errno ? safe_strerror (errno) : "OK");
-
- /* Hold this event/waitstatus while we check to see if
- there are any more (we still want to get that SIGSTOP). */
- there are any more (we still want to get that SIGSTOP). */
- stop_wait_callback (lp, NULL);
+ if (debug_linux_nat)
+ fprintf_unfiltered (gdb_stdlog,
@ -202,7 +202,7 @@ Index: gdb-7.2.50.20101116/gdb/linux-nat.c
- lp->status = status;
- return 0;
- }
+ /* Save the sigtrap event. */
+ /* Save the sigtrap event. */
+ lp->status = status;
+ gdb_assert (! lp->stopped);
+ gdb_assert (lp->signalled);
@ -248,7 +248,7 @@ Index: gdb-7.2.50.20101116/gdb/linux-nat.c
lp->signalled = 0;
}
}
@@ -3469,52 +3422,6 @@ retry:
@@ -3514,52 +3467,6 @@ retry:
lp = NULL;
}
@ -301,10 +301,10 @@ Index: gdb-7.2.50.20101116/gdb/linux-nat.c
if (!target_can_async_p ())
{
/* Causes SIGINT to be passed on to the attached process. */
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/siginfo-threads.c
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.threads/siginfo-threads.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/siginfo-threads.c 2010-11-16 09:08:44.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.threads/siginfo-threads.c 2011-01-17 16:02:40.000000000 +0100
@@ -0,0 +1,447 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@ -753,10 +753,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/siginfo-threads.c
+
+ return EXIT_SUCCESS;
+}
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/siginfo-threads.exp
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.threads/siginfo-threads.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/siginfo-threads.exp 2010-11-16 09:08:44.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.threads/siginfo-threads.exp 2011-01-17 16:02:40.000000000 +0100
@@ -0,0 +1,94 @@
+# Copyright 2010 Free Software Foundation, Inc.
+
@ -852,10 +852,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/siginfo-threads.exp
+}
+
+gdb_continue_to_breakpoint break-at-exit ".*break-at-exit.*"
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/sigstep-threads.c
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.threads/sigstep-threads.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/sigstep-threads.c 2010-11-16 09:08:44.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.threads/sigstep-threads.c 2011-01-17 16:02:40.000000000 +0100
@@ -0,0 +1,54 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@ -911,10 +911,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/sigstep-threads.c
+ start (NULL); /* main-start */
+ return 0;
+}
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/sigstep-threads.exp
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.threads/sigstep-threads.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/sigstep-threads.exp 2010-11-16 09:08:44.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.threads/sigstep-threads.exp 2011-01-17 16:02:40.000000000 +0100
@@ -0,0 +1,74 @@
+# Copyright 2010 Free Software Foundation, Inc.
+

View File

@ -1,7 +1,7 @@
Index: gdb-7.2.50.20110107/gdb/f-lang.c
Index: gdb-7.2.50.20110117/gdb/f-lang.c
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/f-lang.c 2011-01-05 23:22:48.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/f-lang.c 2011-01-07 09:08:52.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/f-lang.c 2011-01-07 20:36:16.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/f-lang.c 2011-01-17 15:56:07.000000000 +0100
@@ -57,20 +57,6 @@ typedef struct saved_bf_symnum SAVED_BF,
/* Local functions */
@ -77,10 +77,10 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
- above list. */
-
-static SAVED_BF_PTR tmp_bf_ptr; /* Generic temporary for use
- in macros */
- in macros. */
-
-/* The following function simply enters a given common block onto
- the global common block chain */
- the global common block chain. */
-
-static void
-add_common_block (char *name, CORE_ADDR offset, int secnum, char *func_stab)
@ -91,7 +91,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
- /* If the COMMON block we are trying to add has a blank
- name (i.e. "#BLNK_COM") then we set it to __BLANK
- because the darn "#" character makes GDB's input
- parser have fits. */
- parser have fits. */
-
-
- if (strcmp (name, BLANK_COMMON_NAME_ORIGINAL) == 0
@ -111,7 +111,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
- tmp->name = xmalloc (strlen (name) + 1);
-
- /* local_copy_func_stab is a stabstring, let us first extract the
- function name from the stab by NULLing out the ':' character. */
- function name from the stab by NULLing out the ':' character. */
-
-
- c = NULL;
@ -148,7 +148,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
-#endif
-
-/* The following function simply enters a given common entry onto
- the "current_common" block that has been saved away. */
- the "current_common" block that has been saved away. */
-
-#if 0
-static void
@ -160,7 +160,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
-
- /* The order of this list is important, since
- we expect the entries to appear in decl.
- order when we later issue "info common" calls */
- order when we later issue "info common" calls. */
-
- tmp = allocate_common_entry_node ();
-
@ -185,7 +185,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
-}
-#endif
-
-/* This routine finds the first encountred COMMON block named "name" */
-/* This routine finds the first encountred COMMON block named "name". */
-
-#if 0
-static SAVED_F77_COMMON_PTR
@ -208,7 +208,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
-#endif
/* This routine finds the first encountred COMMON block named "name"
that belongs to function funcname */
that belongs to function funcname. */
@@ -662,193 +470,3 @@ find_common_for_function (char *name, ch
}
return (NULL);
@ -226,7 +226,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
-{
- COMMON_ENTRY_PTR entry;
-
- blk->offset = offset; /* Keep this around for future use. */
- blk->offset = offset; /* Keep this around for future use. */
-
- entry = blk->entries;
-
@ -244,7 +244,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
- blocks occur with relative infrequency, we simply do a linear scan on
- the name. Eventually, the best way to do this will be a
- hashed-lookup. Secnum is the section number for the .bss section
- (which is where common data lives). */
- (which is where common data lives). */
-
-static void
-patch_all_commons_by_name (char *name, CORE_ADDR offset, int secnum)
@ -282,7 +282,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
- #line pragmas sometimes cause line ranges to get messed up
- we simply create a linear list. This list can then be searched
- first by a queueing algorithm and upon failure fall back to
- a linear scan. */
- a linear scan. */
-
-#if 0
-#define ADD_BF_SYMNUM(bf_sym,fcn_sym) \
@ -311,7 +311,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
- }
-#endif
-
-/* This function frees the entire (.bf,function) list */
-/* This function frees the entire (.bf,function) list. */
-
-#if 0
-static void
@ -342,7 +342,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
- int nprobes = 0;
-
- /* First use a simple queuing algorithm (i.e. look and see if the
- item at the head of the queue is the one you want) */
- item at the head of the queue is the one you want). */
-
- if (saved_bf_list == NULL)
- internal_error (__FILE__, __LINE__,
@ -361,7 +361,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
-
- /* If the above did not work (probably because #line directives were
- used in the sourcefile and they messed up our internal tables) we now do
- the ugly linear scan */
- the ugly linear scan. */
-
- if (global_remote_debug)
- fprintf_unfiltered (gdb_stderr, "\ndefaulting to linear scan\n");
@ -403,10 +403,10 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
- saved_function_list = NULL;
-}
-#endif
Index: gdb-7.2.50.20110107/gdb/f-lang.h
Index: gdb-7.2.50.20110117/gdb/f-lang.h
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/f-lang.h 2011-01-07 09:03:38.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/f-lang.h 2011-01-07 09:07:58.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/f-lang.h 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/f-lang.h 2011-01-17 15:54:14.000000000 +0100
@@ -76,14 +76,9 @@ typedef struct saved_f77_common SAVED_F7
typedef struct common_entry COMMON_ENTRY, *COMMON_ENTRY_PTR;
@ -422,10 +422,10 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.h
#define BLANK_COMMON_NAME_ORIGINAL "#BLNK_COM" /* XLF assigned */
#define BLANK_COMMON_NAME_MF77 "__BLNK__" /* MF77 assigned */
#define BLANK_COMMON_NAME_LOCAL "__BLANK" /* Local GDB */
Index: gdb-7.2.50.20110107/gdb/f-valprint.c
Index: gdb-7.2.50.20110117/gdb/f-valprint.c
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/f-valprint.c 2011-01-07 09:03:38.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/f-valprint.c 2011-01-07 09:07:58.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/f-valprint.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/f-valprint.c 2011-01-17 15:54:36.000000000 +0100
@@ -35,10 +35,6 @@
#include "command.h"
#include "block.h"
@ -442,7 +442,7 @@ Index: gdb-7.2.50.20110107/gdb/f-valprint.c
}
-/* This function is used to determine whether there is a
- F77 common block visible at the current scope called 'comname'. */
- F77 common block visible at the current scope called 'comname'. */
-
-#if 0
-static int
@ -459,7 +459,7 @@ Index: gdb-7.2.50.20110107/gdb/f-valprint.c
- fi = get_selected_frame (_("No frame selected"));
-
- /* The following is generally ripped off from stack.c's routine
- print_frame_info() */
- print_frame_info(). */
-
- func = find_pc_function (fi->pc);
- if (func)
@ -476,7 +476,7 @@ Index: gdb-7.2.50.20110107/gdb/f-valprint.c
- up with a larger address for the function use that instead.
- I don't think this can ever cause any problems; there shouldn't
- be any minimal symbols in the middle of a function.
- FIXME: (Not necessarily true. What about text labels) */
- FIXME: (Not necessarily true. What about text labels?) */
-
- struct minimal_symbol *msymbol = lookup_minimal_symbol_by_pc (fi->pc);
-

View File

@ -1,8 +1,8 @@
Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
Index: gdb-7.2.50.20110117/gdb/dwarf2read.c
===================================================================
--- gdb-7.2.50.20101116.orig/gdb/dwarf2read.c 2010-11-16 08:19:54.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/dwarf2read.c 2010-11-16 08:25:21.000000000 +0100
@@ -7315,12 +7315,14 @@ read_set_type (struct die_info *die, str
--- gdb-7.2.50.20110117.orig/gdb/dwarf2read.c 2011-01-17 15:50:41.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/dwarf2read.c 2011-01-17 15:56:23.000000000 +0100
@@ -7465,12 +7465,14 @@ read_set_type (struct die_info *die, str
return set_die_type (die, set_type, cu);
}
@ -19,7 +19,7 @@ Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
struct attribute *attr;
struct symbol *sym;
CORE_ADDR base = (CORE_ADDR) 0;
@@ -7345,10 +7347,40 @@ read_common_block (struct die_info *die,
@@ -7495,10 +7497,40 @@ read_common_block (struct die_info *die,
}
if (die->child != NULL)
{
@ -60,7 +60,7 @@ Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
attr = dwarf2_attr (child_die, DW_AT_data_member_location, cu);
if (sym != NULL && attr != NULL)
{
@@ -7366,8 +7398,25 @@ read_common_block (struct die_info *die,
@@ -7516,8 +7548,25 @@ read_common_block (struct die_info *die,
SYMBOL_VALUE_ADDRESS (sym) = base + byte_offset;
add_symbol_to_list (sym, &global_symbols);
}
@ -86,7 +86,7 @@ Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
}
}
@@ -10954,6 +11003,13 @@ new_symbol_full (struct die_info *die, s
@@ -11111,6 +11160,13 @@ new_symbol_full (struct die_info *die, s
{
var_decode_location (attr, sym, cu);
attr2 = dwarf2_attr (die, DW_AT_external, cu);
@ -100,7 +100,7 @@ Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
if (SYMBOL_CLASS (sym) == LOC_STATIC
&& SYMBOL_VALUE_ADDRESS (sym) == 0
&& !dwarf2_per_objfile->has_section_at_zero)
@@ -11126,6 +11182,11 @@ new_symbol_full (struct die_info *die, s
@@ -11283,6 +11339,11 @@ new_symbol_full (struct die_info *die, s
SYMBOL_CLASS (sym) = LOC_TYPEDEF;
list_to_add = &global_symbols;
break;
@ -112,11 +112,11 @@ Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
default:
/* Not a tag we recognize. Hopefully we aren't processing
trash data, but since we must specifically ignore things
Index: gdb-7.2.50.20101116/gdb/f-lang.c
Index: gdb-7.2.50.20110117/gdb/f-lang.c
===================================================================
--- gdb-7.2.50.20101116.orig/gdb/f-lang.c 2010-11-16 08:21:46.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/f-lang.c 2010-11-16 08:22:05.000000000 +0100
@@ -443,27 +443,3 @@ _initialize_f_language (void)
--- gdb-7.2.50.20110117.orig/gdb/f-lang.c 2011-01-17 15:56:07.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/f-lang.c 2011-01-17 15:56:48.000000000 +0100
@@ -446,27 +446,3 @@ _initialize_f_language (void)
add_language (&f_language_defn);
}
@ -124,7 +124,7 @@ Index: gdb-7.2.50.20101116/gdb/f-lang.c
-SAVED_F77_COMMON_PTR head_common_list = NULL; /* Ptr to 1st saved COMMON */
-
-/* This routine finds the first encountred COMMON block named "name"
- that belongs to function funcname */
- that belongs to function funcname. */
-
-SAVED_F77_COMMON_PTR
-find_common_for_function (char *name, char *funcname)
@ -144,10 +144,10 @@ Index: gdb-7.2.50.20101116/gdb/f-lang.c
- }
- return (NULL);
-}
Index: gdb-7.2.50.20101116/gdb/f-lang.h
Index: gdb-7.2.50.20110117/gdb/f-lang.h
===================================================================
--- gdb-7.2.50.20101116.orig/gdb/f-lang.h 2010-11-16 08:21:46.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/f-lang.h 2010-11-16 08:22:05.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/f-lang.h 2011-01-17 15:54:14.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/f-lang.h 2011-01-17 15:56:23.000000000 +0100
@@ -52,36 +52,8 @@ enum f90_range_type
NONE_BOUND_DEFAULT /* "(low:high)" */
};
@ -185,10 +185,10 @@ Index: gdb-7.2.50.20101116/gdb/f-lang.h
/* When reasonable array bounds cannot be fetched, such as when
you ask to 'mt print symbols' and there is no stack frame and
Index: gdb-7.2.50.20101116/gdb/f-valprint.c
Index: gdb-7.2.50.20110117/gdb/f-valprint.c
===================================================================
--- gdb-7.2.50.20101116.orig/gdb/f-valprint.c 2010-11-16 08:21:46.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/f-valprint.c 2010-11-16 08:22:05.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/f-valprint.c 2011-01-17 15:54:36.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/f-valprint.c 2011-01-17 15:59:38.000000000 +0100
@@ -34,6 +34,8 @@
#include "gdbcore.h"
#include "command.h"
@ -198,7 +198,7 @@ Index: gdb-7.2.50.20101116/gdb/f-valprint.c
extern void _initialize_f_valprint (void);
static void info_common_command (char *, int);
@@ -486,22 +488,54 @@ f_val_print (struct type *type, const gd
@@ -489,22 +491,54 @@ f_val_print (struct type *type, const gd
return 0;
}
@ -266,7 +266,7 @@ Index: gdb-7.2.50.20101116/gdb/f-valprint.c
}
/* This function is used to print out the values in a given COMMON
@@ -511,11 +545,9 @@ list_all_visible_commons (char *funname)
@@ -514,11 +548,9 @@ list_all_visible_commons (char *funname)
static void
info_common_command (char *comname, int from_tty)
{
@ -280,9 +280,9 @@ Index: gdb-7.2.50.20101116/gdb/f-valprint.c
/* We have been told to display the contents of F77 COMMON
block supposedly visible in this function. Let us
@@ -527,74 +559,31 @@ info_common_command (char *comname, int
@@ -530,74 +562,31 @@ info_common_command (char *comname, int
/* The following is generally ripped off from stack.c's routine
print_frame_info() */
print_frame_info(). */
- func = find_pc_function (get_frame_pc (fi));
- if (func)
@ -301,7 +301,7 @@ Index: gdb-7.2.50.20101116/gdb/f-valprint.c
- up with a larger address for the function use that instead.
- I don't think this can ever cause any problems; there shouldn't
- be any minimal symbols in the middle of a function.
- FIXME: (Not necessarily true. What about text labels) */
- FIXME: (Not necessarily true. What about text labels?) */
-
- struct minimal_symbol *msymbol =
- lookup_minimal_symbol_by_pc (get_frame_pc (fi));
@ -327,7 +327,7 @@ Index: gdb-7.2.50.20101116/gdb/f-valprint.c
}
- /* If comname is NULL, we assume the user wishes to see the
- which COMMON blocks are visible here and then return */
- which COMMON blocks are visible here and then return. */
-
- if (comname == 0)
+ while (block)
@ -371,11 +371,11 @@ Index: gdb-7.2.50.20101116/gdb/f-valprint.c
}
void
Index: gdb-7.2.50.20101116/gdb/stack.c
Index: gdb-7.2.50.20110117/gdb/stack.c
===================================================================
--- gdb-7.2.50.20101116.orig/gdb/stack.c 2010-09-30 12:29:00.000000000 +0200
+++ gdb-7.2.50.20101116/gdb/stack.c 2010-11-16 08:22:05.000000000 +0100
@@ -1490,6 +1490,8 @@ iterate_over_block_locals (struct block
--- gdb-7.2.50.20110117.orig/gdb/stack.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/stack.c 2011-01-17 15:56:23.000000000 +0100
@@ -1498,6 +1498,8 @@ iterate_over_block_locals (struct block
case LOC_COMPUTED:
if (SYMBOL_IS_ARGUMENT (sym))
break;
@ -384,10 +384,10 @@ Index: gdb-7.2.50.20101116/gdb/stack.c
(*cb) (SYMBOL_PRINT_NAME (sym), sym, cb_data);
break;
Index: gdb-7.2.50.20101116/gdb/symtab.h
Index: gdb-7.2.50.20110117/gdb/symtab.h
===================================================================
--- gdb-7.2.50.20101116.orig/gdb/symtab.h 2010-11-16 07:53:59.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/symtab.h 2010-11-16 08:22:05.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/symtab.h 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/symtab.h 2011-01-17 15:56:23.000000000 +0100
@@ -408,7 +408,10 @@ typedef enum domain_enum_tag
FUNCTIONS_DOMAIN,
@ -400,10 +400,10 @@ Index: gdb-7.2.50.20101116/gdb/symtab.h
}
domain_enum;
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.fortran/common-block.exp
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.fortran/common-block.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.fortran/common-block.exp 2010-11-16 08:22:05.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.fortran/common-block.exp 2011-01-17 15:56:23.000000000 +0100
@@ -0,0 +1,101 @@
+# Copyright 2008 Free Software Foundation, Inc.
+
@ -506,10 +506,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.fortran/common-block.exp
+gdb_test "p ix_x" " = 1 *" "p ix_x in"
+gdb_test "p iy_y" " = 2 *" "p iy_y in"
+gdb_test "p iz_z2" " = 3 *" "p iz_z2 in"
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.fortran/common-block.f90
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.fortran/common-block.f90
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.fortran/common-block.f90 2010-11-16 08:22:05.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.fortran/common-block.f90 2011-01-17 15:56:23.000000000 +0100
@@ -0,0 +1,67 @@
+! Copyright 2008 Free Software Foundation, Inc.
+!

View File

@ -0,0 +1,266 @@
http://sourceware.org/ml/gdb-patches/2009-11/msg00596.html
Subject: [gdb FYI-patch] callback-mode readline-6.0 regression
Hi Chet,
FSF GDB currently ships bundled with readline-5.2 which works fine.
But using --with-system-readline and readline-6.0-patchlevel4 has
a regression:
readline-5.2: Run `gdb -nx -q' and type CTRL-C:
(gdb) Quit
(gdb) _
readline-6.0: Run `gdb -nx -q' and type CTRL-C:
(gdb) _
= nothing happens (it gets buffered and executed later)
(It does also FAIL on gdb.gdb/selftest.exp.)
It is because GDB waits in its own poll() mainloop and readline uses via
rl_callback_handler_install and rl_callback_handler_remove. This way the
readline internal variable _rl_interrupt_immediately remains 0 and CTRL-C gets
only stored to _rl_caught_signal but not executed.
Seen in rl_signal_handler even if _rl_interrupt_immediately is set and
_rl_handle_signal is called then the signal is still stored to
_rl_caught_signal. In the _rl_interrupt_immediately case it should not be
stored when it was already processed.
rl_signal_handler does `_rl_interrupt_immediately = 0;' - while I am not aware
of its meaning it breaks the nest-counting of other routines which do
`_rl_interrupt_immediately++;' and `_rl_interrupt_immediately--;' possibly
creating problematic `_rl_interrupt_immediately == -1'.
`_rl_interrupt_immediately' is an internal variable, how it could be accessed
by a readline application? (OK, maybe it should not be used.)
Attaching a current GDB-side patch but it must access readline internal
variable _rl_caught_signal and it is generally just a workaround. Could you
please include support for signals in this asynchronous mode in readline-6.1?
I find it would be enough to make RL_CHECK_SIGNALS public?
GDB: No regressions on {x86_64,x86_64-m32,i686}-fedora12-linux-gnu.
But this is not a patch intended to be accepted.
Thanks,
Jan
gdb/
2009-11-29 Jan Kratochvil <jan.kratochvil@redhat.com>
* config.in, configure: Regenerate.
* configure.ac (for readline_echoing_p): Move inside $LIBS change.
(for _rl_caught_signal): New.
* event-loop.c: Include readline/readline.h.
(gdb_do_one_event) [HAVE_READLINE_CAUGHT_SIGNAL]: New.
gdb/testsuite/
2009-11-29 Jan Kratochvil <jan.kratochvil@redhat.com>
* gdb.gdb/selftest.exp (backtrace through signal handler): Move before
SIGINT pass, drop the timeout case.
(send SIGINT signal to child process): Use gdb_test.
(backtrace through readline handler): New.
Index: gdb-7.2.50.20110107/gdb/config.in
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/config.in 2011-01-17 15:36:40.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/config.in 2011-01-17 15:37:09.000000000 +0100
@@ -464,6 +464,9 @@
/* Define to 1 if wcwidth is declared even after undefining macros. */
#undef HAVE_RAW_DECL_WCWIDTH
+/* readline-6.0 workaround of blocked signals. */
+#undef HAVE_READLINE_CAUGHT_SIGNAL
+
/* Define to 1 if you have the `realpath' function. */
#undef HAVE_REALPATH
Index: gdb-7.2.50.20110107/gdb/configure.ac
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/configure.ac 2011-01-17 15:36:42.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/configure.ac 2011-01-17 15:37:09.000000000 +0100
@@ -736,17 +736,25 @@ if test "$with_system_readline" = yes; t
# readline-6.0 started to use the name `_rl_echoing_p'.
# `$(READLINE_DIR)/' of bundled readline would not resolve in configure.
- AC_MSG_CHECKING([for readline_echoing_p])
save_LIBS=$LIBS
LIBS="$LIBS $READLINE"
+ AC_MSG_CHECKING([for readline_echoing_p])
AC_LINK_IFELSE(AC_LANG_PROGRAM(,[[extern int readline_echoing_p;
return readline_echoing_p;]]),
[READLINE_ECHOING_P=yes],
[READLINE_ECHOING_P=no
AC_DEFINE([readline_echoing_p], [_rl_echoing_p],
[readline-6.0 started to use different name.])])
- LIBS="$save_LIBS"
AC_MSG_RESULT([$READLINE_ECHOING_P])
+ AC_MSG_CHECKING([for _rl_caught_signal])
+ AC_LINK_IFELSE(AC_LANG_PROGRAM(,[[extern int volatile _rl_caught_signal;
+ return _rl_caught_signal;]]),
+ [READLINE_CAUGHT_SIGNAL=yes
+ AC_DEFINE([HAVE_READLINE_CAUGHT_SIGNAL],,
+ [readline-6.0 workaround of blocked signals.])],
+ [READLINE_CAUGHT_SIGNAL=no])
+ AC_MSG_RESULT([$READLINE_CAUGHT_SIGNAL])
+ LIBS="$save_LIBS"
else
READLINE='$(READLINE_DIR)/libreadline.a'
READLINE_DEPS='$(READLINE)'
Index: gdb-7.2.50.20110107/gdb/event-loop.c
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/event-loop.c 2011-01-05 23:22:48.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/event-loop.c 2011-01-17 15:37:23.000000000 +0100
@@ -37,6 +37,7 @@
#include "exceptions.h"
#include "gdb_assert.h"
#include "gdb_select.h"
+#include "readline/readline.h"
/* Tell create_file_handler what events we are interested in.
This is used by the select version of the event loop. */
@@ -419,6 +420,9 @@ gdb_do_one_event (void *data)
static int event_source_head = 0;
const int number_of_sources = 3;
int current = 0;
+#ifdef HAVE_READLINE_CAUGHT_SIGNAL
+ extern int volatile _rl_caught_signal;
+#endif
/* Any events already waiting in the queue? */
if (process_event ())
@@ -463,6 +467,29 @@ gdb_do_one_event (void *data)
if (gdb_wait_for_event (1) < 0)
return -1;
+#ifdef HAVE_READLINE_CAUGHT_SIGNAL
+ if (async_command_editing_p && RL_ISSTATE (RL_STATE_CALLBACK)
+ && _rl_caught_signal)
+ {
+ char *prompt;
+
+ if (rl_prompt == NULL)
+ {
+ /* Should not happen, defensive only. */
+ prompt = "";
+ }
+ else
+ {
+ prompt = alloca (strlen (rl_prompt) + 1);
+ strcpy (prompt, rl_prompt);
+ }
+
+ /* Call RL_CHECK_SIGNALS this way. */
+ rl_callback_handler_remove ();
+ rl_callback_handler_install (prompt, input_handler);
+ }
+#endif
+
/* Handle any new events occurred while waiting. */
if (process_event ())
return 1;
Index: gdb-7.2.50.20110107/gdb/testsuite/gdb.gdb/selftest.exp
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/testsuite/gdb.gdb/selftest.exp 2011-01-17 15:36:37.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/testsuite/gdb.gdb/selftest.exp 2011-01-17 15:37:09.000000000 +0100
@@ -433,6 +433,28 @@ proc test_with_self { executable } {
}
}
+ # get a stack trace with the poll function
+ #
+ # This fails on some linux systems for unknown reasons. On the
+ # systems where it fails, sometimes it works fine when run manually.
+ # The testsuite failures may not be limited to just aout systems.
+ setup_xfail "i*86-pc-linuxaout-gnu"
+ set description "backtrace through signal handler"
+ gdb_test_multiple "backtrace" "$description" {
+ -re "#0.*(read|poll).*in main \\(.*\\) at .*gdb\\.c.*$gdb_prompt $" {
+ pass "$description"
+ }
+ -re ".*$gdb_prompt $" {
+ # On the alpha, we hit the infamous problem about gdb
+ # being unable to get the frame pointer (mentioned in
+ # gdb/README). As it is intermittent, there is no way to
+ # XFAIL it which will give us an XPASS if the problem goes
+ # away.
+ setup_xfail "alpha*-*-osf*"
+ fail "$description"
+ }
+ }
+
set description "send SIGINT signal to child process"
gdb_test "signal SIGINT" \
"Continuing with signal SIGINT.*" \
@@ -443,10 +465,11 @@ proc test_with_self { executable } {
# This fails on some linux systems for unknown reasons. On the
# systems where it fails, sometimes it works fine when run manually.
# The testsuite failures may not be limited to just aout systems.
+ # Optional system readline may not have symbols to be shown.
setup_xfail "i*86-pc-linuxaout-gnu"
- set description "backtrace through signal handler"
+ set description "backtrace through readline handler"
gdb_test_multiple "backtrace" "$description" {
- -re "#0.*(read|poll).*in main \\(.*\\) at .*gdb\\.c.*$gdb_prompt $" {
+ -re "#0.*gdb_do_one_event.*in main \\(.*\\) at .*gdb\\.c.*$gdb_prompt $" {
pass "$description"
}
-re ".*$gdb_prompt $" {
Index: gdb-7.2.50.20110107/gdb/configure
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/configure 2011-01-17 15:36:42.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/configure 2011-01-17 15:37:09.000000000 +0100
@@ -10237,10 +10237,10 @@ if test "$with_system_readline" = yes; t
# readline-6.0 started to use the name `_rl_echoing_p'.
# `$(READLINE_DIR)/' of bundled readline would not resolve in configure.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for readline_echoing_p" >&5
-$as_echo_n "checking for readline_echoing_p... " >&6; }
save_LIBS=$LIBS
LIBS="$LIBS $READLINE"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for readline_echoing_p" >&5
+$as_echo_n "checking for readline_echoing_p... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -10263,9 +10263,35 @@ $as_echo "#define readline_echoing_p _rl
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
- LIBS="$save_LIBS"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $READLINE_ECHOING_P" >&5
$as_echo "$READLINE_ECHOING_P" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _rl_caught_signal" >&5
+$as_echo_n "checking for _rl_caught_signal... " >&6; }
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+extern int volatile _rl_caught_signal;
+ return _rl_caught_signal;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ READLINE_CAUGHT_SIGNAL=yes
+
+$as_echo "#define HAVE_READLINE_CAUGHT_SIGNAL /**/" >>confdefs.h
+
+else
+ READLINE_CAUGHT_SIGNAL=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $READLINE_CAUGHT_SIGNAL" >&5
+$as_echo "$READLINE_CAUGHT_SIGNAL" >&6; }
+ LIBS="$save_LIBS"
else
READLINE='$(READLINE_DIR)/libreadline.a'
READLINE_DEPS='$(READLINE)'

View File

@ -27,10 +27,10 @@ gdb/testsuite/
* gdb.python/py-prettyprint.py (class pp_hint_error): New.
(register_pretty_printers): Register it.
Index: gdb-7.2.50.20110107/gdb/testsuite/gdb.python/py-prettyprint.c
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.python/py-prettyprint.c
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/testsuite/gdb.python/py-prettyprint.c 2011-01-01 16:33:49.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/testsuite/gdb.python/py-prettyprint.c 2011-01-07 09:11:18.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/testsuite/gdb.python/py-prettyprint.c 2011-01-01 16:33:49.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.python/py-prettyprint.c 2011-01-17 16:08:16.000000000 +0100
@@ -44,6 +44,10 @@ struct lazystring {
const char *lazy_str;
};
@ -50,10 +50,10 @@ Index: gdb-7.2.50.20110107/gdb/testsuite/gdb.python/py-prettyprint.c
nstype.elements = narray;
nstype.len = 0;
Index: gdb-7.2.50.20110107/gdb/testsuite/gdb.python/py-prettyprint.exp
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.python/py-prettyprint.exp
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/testsuite/gdb.python/py-prettyprint.exp 2011-01-07 09:03:38.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/testsuite/gdb.python/py-prettyprint.exp 2011-01-07 09:11:32.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/testsuite/gdb.python/py-prettyprint.exp 2011-01-01 16:33:49.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.python/py-prettyprint.exp 2011-01-17 16:08:33.000000000 +0100
@@ -97,6 +97,8 @@ proc run_lang_tests {lang} {
gdb_test_no_output "python pp_ls_encoding = 'UTF-8'"
gdb_test "print estring2" "\"embedded \", <incomplete sequence \\\\302>"
@ -62,11 +62,11 @@ Index: gdb-7.2.50.20110107/gdb/testsuite/gdb.python/py-prettyprint.exp
+
gdb_test "print c" " = container \"container\" with 2 elements = {$nl *.0. = 23,$nl *.1. = 72$nl}"
gdb_test "print nullstr" "RuntimeError: Error reading string from inferior.*"
Index: gdb-7.2.50.20110107/gdb/testsuite/gdb.python/py-prettyprint.py
gdb_test "print nstype" " = {$nl *.0. = 7,$nl *.1. = 42$nl}"
Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.python/py-prettyprint.py
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/testsuite/gdb.python/py-prettyprint.py 2011-01-01 16:33:49.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/testsuite/gdb.python/py-prettyprint.py 2011-01-07 09:11:18.000000000 +0100
--- gdb-7.2.50.20110117.orig/gdb/testsuite/gdb.python/py-prettyprint.py 2011-01-01 16:33:49.000000000 +0100
+++ gdb-7.2.50.20110117/gdb/testsuite/gdb.python/py-prettyprint.py 2011-01-17 16:08:16.000000000 +0100
@@ -156,6 +156,18 @@ class pp_ls:
def display_hint (self):
return 'string'

View File

@ -23,11 +23,11 @@ Name: gdb%{?_with_debug:-debug}
# Set version to contents of gdb/version.in.
# NOTE: the FSF gdb versions are numbered N.M for official releases, like 6.3
# and, since January 2005, X.Y.Z.date for daily snapshots, like 6.3.50.20050112 # (daily snapshot from mailine), or 6.3.0.20040112 (head of the release branch).
Version: 7.2.50.20110107
Version: 7.2.50.20110117
# 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: 10%{?_with_upstream:.upstream}%{dist}
Release: 11%{?_with_upstream:.upstream}%{dist}
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ and GPLv2+ with exceptions and GPL+ and LGPLv2+ and GFDL and BSD and Public Domain
Group: Development/Debuggers
@ -418,6 +418,9 @@ Patch381: gdb-simultaneous-step-resume-breakpoint-test.patch
#=push+work: It should be in glibc: libc-alpha: <20091004161706.GA27450@.*>
Patch382: gdb-core-open-vdso-warning.patch
# Fix callback-mode readline-6.0 regression for CTRL-C (for RHEL-6.0).
Patch390: gdb-readline-6.0-signal.patch
# Fix syscall restarts for amd64->i386 biarch.
#=push
Patch391: gdb-x86_64-i386-syscall-restart.patch
@ -783,8 +786,14 @@ rm -f gdb/jv-exp.c gdb/m2-exp.c gdb/objc-exp.c gdb/p-exp.c
%patch547 -p1
%patch548 -p1
%patch390 -p1
%patch393 -p1
%patch335 -p1
readline="$(readlink -f %{_libdir}/libreadline.so)"
if [ "$readline" = "${readline%/libreadline.so.6.0}" ]
then
%patch390 -p1 -R
fi
%if 0%{!?el5:1}
%patch393 -p1 -R
%patch335 -p1 -R
@ -1178,6 +1187,11 @@ fi
%endif
%changelog
* Mon Jan 17 2011 Jan Kratochvil <jan.kratochvil@redhat.com> - 7.2.50.20110117-11.fc15
- Rebase to FSF GDB 7.2.50.20110117 (which is a 7.3 pre-release).
- Fix callback-mode readline-6.0 regression for CTRL-C (for RHEL-6.0).
- Fix occasional NULL dereference of the readline-6.0 workaround (BZ 575516).
* Sat Jan 15 2011 Jan Kratochvil <jan.kratochvil@redhat.com> - 7.2.50.20110107-10.fc15
- [delayed-symfile] Test a backtrace regression on CFIs without DIE (BZ 614604).
- [archer-tromey-delayed-symfile] New test gdb.dwarf2/dw2-aranges.exp.

View File

@ -1,2 +1,2 @@
a409209e95cd717274431b2eaa77dac0 gdb-7.2.50.20110107.tar.bz2
04e5c4b1b9e633422cc48990fe61958d libstdc++-v3-python-r155978.tar.bz2
3cecba20b0efd51e5acb937f3abd2014 gdb-7.2.50.20110117.tar.bz2