This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Crash regression gdb.cp/no-dmgl-verbose.exp: Re: [RFA 2/3] Ada: allow unqualified function names in linespecs


On Thu, 26 Jan 2012 05:22:58 +0100, Joel Brobecker wrote:
> Thanks, Tom! I re-tested and checked the patch in.

 Running gdb/testsuite/gdb.cp/no-dmgl-verbose.exp ...
 PASS: gdb.cp/no-dmgl-verbose.exp: set breakpoint pending off
-PASS: gdb.cp/no-dmgl-verbose.exp: DMGL_VERBOSE-demangled f(std::string) is not defined
+ERROR: Couldn't send break 'f(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)' to GDB.
+UNRESOLVED: gdb.cp/no-dmgl-verbose.exp: DMGL_VERBOSE-demangled f(std::string) is not defined

8eb4602788d1c0b3da11b9383492a7cdb5657f9d is the first bad commit
commit 8eb4602788d1c0b3da11b9383492a7cdb5657f9d
Author: Joel Brobecker <brobecker@gnat.com>
Date:   Thu Jan 26 04:20:31 2012 +0000
    Ada: allow unqualified function names in linespecs

But the regression happens only for:
	gdbcvs-dwarf41-gcchead-rawhide/fedora-rawhide-x86_64/out/gdb-m32.sum
which is:
	FSF GDB HEAD
	-gdwarf-4 -fdebug-types-section
	x86_64 -m32
and not in other cases so it probably only reproduced some existing bug instead
of introducing a new one, I will check it more later.

#1  0x00000000007712b8 in determine_prefix (die=0x389d1d0, cu=0x38ab5f0) at dwarf2read.c:12582
12582		    && strcmp (TYPE_TAG_NAME (parent_type), "::") == 0)
(gdb) p parent_type.main_type.tag_name 
$1 = 0x0


Thanks,
Jan


#0  __strcmp_sse42 () at ../sysdeps/x86_64/multiarch/strcmp-sse42.S:163
#1  in determine_prefix (die=0x218a6c0, cu=0x20d3100) at dwarf2read.c:12582
#2  in dwarf2_compute_name (name=0x21722af "ptrdiff_t", die=0x218a6c0, cu=0x20d3100, physname=0) at dwarf2read.c:5020
#3  in dwarf2_full_name (name=0x0, die=0x218a6c0, cu=0x20d3100) at dwarf2read.c:5224
#4  in read_typedef (die=0x218a6c0, cu=0x20d3100) at dwarf2read.c:8764
#5  in read_type_die_1 (die=0x218a6c0, cu=0x20d3100) at dwarf2read.c:12333
#6  in lookup_die_type (die=0x2189c80, attr=0x2189cd8, cu=0x20d3100) at dwarf2read.c:12240
#7  in die_type (die=0x2189c80, cu=0x20d3100) at dwarf2read.c:12119
#8  in read_typedef (die=0x2189c80, cu=0x20d3100) at dwarf2read.c:8769
#9  in read_type_die_1 (die=0x2189c80, cu=0x20d3100) at dwarf2read.c:12333
#10 in read_type_die (die=0x2189c80, cu=0x20d3100) at dwarf2read.c:12281
#11 in dwarf2_add_typedef (fip=0x7fffffffccd0, die=0x2189c80, cu=0x20d3100) at dwarf2read.c:7103
#12 in process_structure_scope (die=0x2189b20, cu=0x20d3100) at dwarf2read.c:7677
#13 in process_die (die=0x2189b20, cu=0x20d3100) at dwarf2read.c:4851
#14 in read_type_unit_scope (die=0x2189a10, cu=0x20d3100) at dwarf2read.c:5735
#15 in process_die (die=0x2189a10, cu=0x20d3100) at dwarf2read.c:4833
#16 in process_full_comp_unit (per_cu=0x21614d0) at dwarf2read.c:4764
#17 in process_queue () at dwarf2read.c:4526
#18 in dw2_do_instantiate_symtab (per_cu=0x21614d0) at dwarf2read.c:1803
#19 in psymtab_to_symtab_1 (pst=0x218aff0) at dwarf2read.c:4602
#20 in dwarf2_psymtab_to_symtab (pst=0x218aff0) at dwarf2read.c:4481
#21 in psymtab_to_symtab (pst=0x218aff0) at psymtab.c:778
#22 in expand_symtabs_matching_via_partial (objfile=0x2109f40, file_matcher=0, name_matcher=0x6daeb6 <iterate_name_matcher>, kind=ALL_DOMAIN, data=0x7fffffffd030) at psymtab.c:1307
#23 in iterate_over_all_matching_symtabs (name=0x7fffffffd130 "f(std::string)", domain=VAR_DOMAIN, callback=0x6e02ff <collect_symbols>, data=0x7fffffffd0f0, search_pspace=0x0) at linespec.c:384
#24 in add_matching_symbols_to_info (name=0x7fffffffd130 "f(std::string)", info=0x7fffffffd0f0, pspace=0x0) at linespec.c:2947
#25 in decode_variable (self=0x7fffffffd310, copy=0x7fffffffd130 "f(std::string)") at linespec.c:2997
#26 in decode_line_internal (self=0x7fffffffd310, argptr=0x7fffffffd510) at linespec.c:1165
#27 in decode_line_full (argptr=0x7fffffffd510, flags=1, default_symtab=0x0, default_line=0, canonical=0x7fffffffd5a0, select_mode=0x0, filter=0x0) at linespec.c:1233
#28 in parse_breakpoint_sals (address=0x7fffffffd510, canonical=0x7fffffffd5a0) at breakpoint.c:7885
#29 in create_sals_from_address_default (arg=0x7fffffffd510, canonical=0x7fffffffd5a0, type_wanted=bp_breakpoint, addr_start= 0x7fffffffdddb "'f(std::string)'", copy_arg=0x7fffffffd540) at breakpoint.c:12501
#30 in bkpt_create_sals_from_address (arg=0x7fffffffd510, canonical=0x7fffffffd5a0, type_wanted=bp_breakpoint, addr_start= 0x7fffffffdddb "'f(std::string)'", copy_arg=0x7fffffffd540) at breakpoint.c:11451
#31 in create_breakpoint (gdbarch=0x20c5a20, arg=0x7fffffffddeb "", cond_string=0x0, thread=0, parse_condition_and_thread=1, tempflag=0, type_wanted=bp_breakpoint, ignore_count=0, pending_break_support=AUTO_BOOLEAN_AUTO, ops=0x1d90240, from_tty=1, enabled=1, internal=0) at breakpoint.c:8095
#32 in break_command_1 (arg=0x7fffffffdddb "'f(std::string)'", flag=0, from_tty=1) at breakpoint.c:8283
#33 in break_command (arg=0x7fffffffdddb "'f(std::string)'", from_tty=1) at breakpoint.c:8355


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]