http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54572
--- Comment #15 from Janne Blomqvist <jb at gcc dot gnu.org> 2012-12-01 19:48:12 UTC --- (In reply to comment #14) > Thanks for the additional info. > > #1 0x00007ffff7bb53be in build_address_map (addrs=0x7fffffffc710, > data=0x7fffffffcf1c, > error_callback=0x7ffff7ad51f0 <error_callback>, is_bigendian=0, > dwarf_str_size=360, > dwarf_str=0x7ffff7ff71e3 "integer(kind=4)", dwarf_ranges_size=0, > dwarf_ranges=0x7ffff7ff6000 <Address 0x7ffff7ff6000 out of bounds>, > dwarf_abbrev_size=253, > dwarf_abbrev=0x7ffff7ff708f > "\001\021\001%\016\023\vB\v\003\016\033\016\021\001\022\001\020\006", > dwarf_info_size=484, dwarf_info=0x7ffff7ff6eab <Address 0x7ffff7ff6eab out > of bounds>, > base_address=<optimized out>, state=<optimized out>) at > ../../../trunk-git/libbacktrace/dwarf.c:1299 > > That is weird because it is showing the parameters in reverse order. Is that > what gdb normally does on your system? It doesn't seem to do it for other > functions. No, I've never seen it before. Then again, before yesterday I had never used GDB 7.5, only older versions. > Here gdb says that the value of dwarf_info is out of bounds. That is not > good. > That is most likely the immediate cause of the problem. (dwarf_ranges is > also > out of bounds, but that likely doesn't matter as dwarf_ranges_size is zero.) > > It looks like it had trouble getting the debug info for the executable file > itself. Can you add the output of readelf -S on the executable? $ readelf -S bt2.g There are 35 section headers, starting at offset 0x1668: Section Headers: [Nr] Name Type Address Offset Size EntSize Flags Link Info Align [ 0] NULL 0000000000000000 00000000 0000000000000000 0000000000000000 0 0 0 [ 1] .interp PROGBITS 0000000000400200 00000200 000000000000001c 0000000000000000 A 0 0 1 [ 2] .note.ABI-tag NOTE 000000000040021c 0000021c 0000000000000020 0000000000000000 A 0 0 4 [ 3] .hash HASH 0000000000400240 00000240 0000000000000040 0000000000000004 A 4 0 8 [ 4] .dynsym DYNSYM 0000000000400280 00000280 0000000000000108 0000000000000018 A 5 1 8 [ 5] .dynstr STRTAB 0000000000400388 00000388 00000000000001c8 0000000000000000 A 0 0 1 [ 6] .gnu.version VERSYM 0000000000400550 00000550 0000000000000016 0000000000000002 A 4 0 2 [ 7] .gnu.version_r VERNEED 0000000000400568 00000568 0000000000000050 0000000000000000 A 5 2 8 [ 8] .rela.dyn RELA 00000000004005b8 000005b8 0000000000000018 0000000000000018 A 4 0 8 [ 9] .rela.plt RELA 00000000004005d0 000005d0 0000000000000090 0000000000000018 A 4 11 8 [10] .init PROGBITS 0000000000400660 00000660 000000000000000e 0000000000000000 AX 0 0 4 [11] .plt PROGBITS 0000000000400670 00000670 0000000000000070 0000000000000010 AX 0 0 16 [12] .text PROGBITS 00000000004006e0 000006e0 00000000000002f4 0000000000000000 AX 0 0 16 [13] .fini PROGBITS 00000000004009d4 000009d4 0000000000000009 0000000000000000 AX 0 0 4 [14] .rodata PROGBITS 00000000004009e0 000009e0 000000000000003c 0000000000000000 A 0 0 16 [15] .eh_frame_hdr PROGBITS 0000000000400a1c 00000a1c 000000000000004c 0000000000000000 A 0 0 4 [16] .eh_frame PROGBITS 0000000000400a68 00000a68 0000000000000124 0000000000000000 A 0 0 8 [17] .init_array INIT_ARRAY 0000000000600b90 00000b90 0000000000000008 0000000000000000 WA 0 0 8 [18] .fini_array FINI_ARRAY 0000000000600b98 00000b98 0000000000000008 0000000000000000 WA 0 0 8 [19] .jcr PROGBITS 0000000000600ba0 00000ba0 0000000000000008 0000000000000000 WA 0 0 8 [20] .dynamic DYNAMIC 0000000000600ba8 00000ba8 0000000000000220 0000000000000010 WA 5 0 8 [21] .got PROGBITS 0000000000600dc8 00000dc8 0000000000000008 0000000000000008 WA 0 0 8 [22] .got.plt PROGBITS 0000000000600dd0 00000dd0 0000000000000048 0000000000000008 WA 0 0 8 [23] .data PROGBITS 0000000000600e18 00000e18 0000000000000010 0000000000000000 WA 0 0 8 [24] .bss NOBITS 0000000000600e28 00000e28 0000000000000008 0000000000000000 WA 0 0 4 [25] .comment PROGBITS 0000000000000000 00000e28 0000000000000053 0000000000000001 MS 0 0 1 [26] .debug_aranges PROGBITS 0000000000000000 00000e7b 0000000000000030 0000000000000000 0 0 1 [27] .debug_info PROGBITS 0000000000000000 00000eab 00000000000001e4 0000000000000000 0 0 1 [28] .debug_abbrev PROGBITS 0000000000000000 0000108f 00000000000000fd 0000000000000000 0 0 1 [29] .debug_line PROGBITS 0000000000000000 0000118c 0000000000000057 0000000000000000 0 0 1 [30] .debug_str PROGBITS 0000000000000000 000011e3 0000000000000168 0000000000000001 MS 0 0 1 [31] .debug_loc PROGBITS 0000000000000000 0000134b 00000000000001e0 0000000000000000 0 0 1 [32] .shstrtab STRTAB 0000000000000000 0000152b 000000000000013c 0000000000000000 0 0 1 [33] .symtab SYMTAB 0000000000000000 00001f28 0000000000000768 0000000000000018 34 52 8 [34] .strtab STRTAB 0000000000000000 00002690 000000000000032d 0000000000000000 0 0 1 Key to Flags: W (write), A (alloc), X (execute), M (merge), S (strings), l (large) I (info), L (link order), G (group), T (TLS), E (exclude), x (unknown) O (extra OS processing required) o (OS specific), p (processor specific) Like I mentioned previously, my binutils is version 2.22 which apparently doesn't have complete support for DWARF-4. I can certainly try upgrading, if you think that would help; I don't really know what to look for in the above output, sorry.