http://sourceware.org/ml/gdb-patches/2010-09/msg00273.html Subject: [patch] .gdb_index: Fix Ada regression Hi, on a system with libraries using .gdb_index all the Ada testcases FAIL: Running ./gdb.ada/print_pc.exp ... FAIL: gdb.ada/print_pc.exp: start inferior (GDB internal error) FAIL: gdb.ada/print_pc.exp: p /x $pc dwarf2read.c:2374: internal-error: map_ada_symtabs called via index method FAIl is on Fedora 14 snapshot using gcc-debuginfo-4.5.1-3.fc14.x86_64 file: /usr/lib/debug/lib64/libgcc_s-4.5.1-20100907.so.1.debug The regressions get fixed on x86_64-fedora14snapshot-linux-gnu by the attached patch. No regressions on {x86_64,x86_64-m32,i686}-fedora14snapshot-linux-gnu. During my tests with `set language ada' I could not lookup non-Ada symbols anyway so I believe the patch is OK but sure it needs an Ada-wise review. Thanks, Jan gdb/ 2010-09-14 Jan Kratochvil * dwarf2read.c (dw2_map_ada_symtabs): Remove the internal_error. Update the comment. --- a/gdb/dwarf2read.c +++ b/gdb/dwarf2read.c @@ -2369,10 +2369,9 @@ dw2_map_ada_symtabs (struct objfile *objfile, domain_enum namespace, int wild, void *data) { - /* For now, we don't support Ada, so this function can't be - reached. */ - internal_error (__FILE__, __LINE__, - _("map_ada_symtabs called via index method")); + /* For now, we don't support Ada. Still the function can be called if the + current language is Ada for a non-Ada objfile using GNU index. As Ada + does not look for non-Ada symbols this function should just return. */ } static void