* dwarf2read.c (create_addrmap_from_index): Complain about bad CU

index numbers.
This commit is contained in:
Doug Evans 2013-03-29 00:18:32 +00:00
parent e4a48d9d49
commit f652bce2ee
2 changed files with 15 additions and 3 deletions

View File

@ -1,5 +1,8 @@
2013-03-28 Doug Evans <dje@google.com>
* dwarf2read.c (create_addrmap_from_index): Complain about bad CU
index numbers.
* dwarf2read.c (dw2_get_file_names): Delete arg "objfile".
All callers updated.
(dw2_print_stats): Print #read CUs too.

View File

@ -2530,9 +2530,18 @@ create_addrmap_from_index (struct objfile *objfile, struct mapped_index *index)
iter += 8;
cu_index = extract_unsigned_integer (iter, 4, BFD_ENDIAN_LITTLE);
iter += 4;
addrmap_set_empty (mutable_map, lo + baseaddr, hi + baseaddr - 1,
dw2_get_cu (cu_index));
if (cu_index < dwarf2_per_objfile->n_comp_units)
{
addrmap_set_empty (mutable_map, lo + baseaddr, hi + baseaddr - 1,
dw2_get_cu (cu_index));
}
else
{
complaint (&symfile_complaints,
_(".gdb_index address table has invalid CU number %u"),
(unsigned) cu_index);
}
}
objfile->psymtabs_addrmap = addrmap_create_fixed (mutable_map,