Blob Blame History Raw
--- ./gdb/dwarf2read.c	4 May 2008 17:27:01 -0000	1.260
+++ ./gdb/dwarf2read.c	4 May 2008 18:26:20 -0000
@@ -6754,7 +6754,14 @@ dwarf2_attr (struct die_info *die, unsig
   for (i = 0; i < die->num_attrs; ++i)
     {
       if (die->attrs[i].name == name)
-	return &die->attrs[i];
+        {
+	  /* GCC PR ada/35998 workaround.  */
+	  if (name == DW_AT_byte_size
+	      && DW_UNSND (&die->attrs[i]) == 0xffffffff)
+	    return NULL;
+
+	  return &die->attrs[i];
+	}
       if (die->attrs[i].name == DW_AT_specification
 	  || die->attrs[i].name == DW_AT_abstract_origin)
 	spec = &die->attrs[i];