patches/gdb/6.3/690-debian_member-field-symtab.patch
changeset 96 aa1a9fbd6eb8
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/patches/gdb/6.3/690-debian_member-field-symtab.patch	Thu May 17 16:22:51 2007 +0000
     1.3 @@ -0,0 +1,35 @@
     1.4 +Status: unsubmitted
     1.5 +
     1.6 +This patch was for Debian bug #239535.  It needs to be tested, and
     1.7 +submitted.
     1.8 +
     1.9 +Index: gdb-6.3/gdb/valops.c
    1.10 +===================================================================
    1.11 +--- gdb-6.3.orig/gdb/valops.c	2004-11-09 22:51:07.000000000 -0500
    1.12 ++++ gdb-6.3/gdb/valops.c	2004-11-10 00:43:54.036837699 -0500
    1.13 +@@ -2314,8 +2314,10 @@ check_field_in (struct type *type, const
    1.14 + 	return 1;
    1.15 +     }
    1.16 + 
    1.17 ++  /* Check each baseclass.  Call check_typedef, which will follow typedefs
    1.18 ++     and do opaque/stub type resolution.  */
    1.19 +   for (i = TYPE_N_BASECLASSES (type) - 1; i >= 0; i--)
    1.20 +-    if (check_field_in (TYPE_BASECLASS (type, i), name))
    1.21 ++    if (check_field_in (check_typedef (TYPE_BASECLASS (type, i)), name))
    1.22 +       return 1;
    1.23 + 
    1.24 +   return 0;
    1.25 +Index: gdb-6.3/gdb/dwarf2read.c
    1.26 +===================================================================
    1.27 +--- gdb-6.3.orig/gdb/dwarf2read.c	2004-10-15 20:41:00.000000000 -0400
    1.28 ++++ gdb-6.3/gdb/dwarf2read.c	2004-11-10 00:46:21.970935829 -0500
    1.29 +@@ -2099,8 +2099,8 @@ guess_structure_name (struct partial_die
    1.30 + 				    strlen (actual_class_name),
    1.31 + 				    &cu->comp_unit_obstack);
    1.32 + 		  xfree (actual_class_name);
    1.33 ++		  break;
    1.34 + 		}
    1.35 +-	      break;
    1.36 + 	    }
    1.37 + 
    1.38 + 	  child_pdi = child_pdi->die_sibling;