- Tolerate DW_AT_type referencing <0> and instead of generating an error,

treat as unknown type.
- Bugzilla 144852.
This commit is contained in:
Jeff Johnston 2005-02-05 03:49:11 +00:00
parent 6cc37db5c7
commit 020264b153
2 changed files with 28 additions and 1 deletions

View File

@ -0,0 +1,18 @@
2005-02-01 Jeff Johnston <jjohnstn@redhat.com>
* dwarf2read.c (die_type): Tolerate a type reference to location
<0> and treat as unknown type.
--- gdb-6.3/gdb/dwarf2read.c.fix Tue Feb 1 16:48:49 2005
+++ gdb-6.3/gdb/dwarf2read.c Tue Feb 1 16:50:12 2005
@@ -7120,6 +7120,10 @@ die_type (struct die_info *die, struct d
/* A missing DW_AT_type represents a void type. */
return dwarf2_fundamental_type (cu->objfile, FT_VOID, cu);
}
+ else if (type_attr->u.unsnd == 0)
+ /* If we have an invalid reference to 0, ignore it and treat
+ the type as unknown. */
+ return builtin_type_error;
else
type_die = follow_die_ref (die, type_attr, cu);

View File

@ -11,7 +11,7 @@ Name: gdb
Version: 6.3.0.0
# The release always contains a leading reserved number, start it at 0.
Release: 0.14
Release: 0.15
License: GPL
Group: Development/Debuggers
@ -171,6 +171,9 @@ Patch137: gdb-6.3-movedir-20050125.patch
# Fix to support unwinding syscalls in ia64 corefiles
Patch138: gdb-6.3-ia64-corefile-fix-20050127.patch
# Tolerate DW_AT_type referencing <0>.
Patch139: gdb-6.3-dwattype0-20050201.patch
%ifarch ia64
BuildRequires: ncurses-devel glibc-devel gcc make gzip texinfo dejagnu libunwind >= 0.96-3
%else
@ -242,6 +245,7 @@ and printing their data.
%patch136 -p1
%patch137 -p1
%patch138 -p1
%patch139 -p1
# Change the version that gets printed at GDB startup, so it is RedHat
# specific.
@ -410,6 +414,11 @@ fi
# don't include the files in include, they are part of binutils
%changelog
* Fri Feb 04 2005 Jeff Johnston <jjohnstn@redhat.com> 6.3.0.0-0.15
- Tolerate DW_AT_type referencing <0> and instead of generating an
error, treat as unknown type.
- Bugzilla 144852.
* Thu Feb 3 2005 Andrew Cagney <cagney@redhat.com> 6.3.0.0-0.14
- Separate out test patches.