mirror of
https://github.com/bminor/binutils-gdb.git
synced 2026-04-05 02:29:51 +00:00
[gdb/testsuite] Simplify gdb.dwarf2/forward-spec.exp
Test-case gdb.dwarf2/forward-spec.exp contains a non-trivial gdb_test_multiple
to parse this cooked_index_entry:
...
[5] ((cooked_index_entry *) 0x7f01f0004040)^M
name: v^M
canonical: v^M
qualified: ns::v^M
DWARF tag: DW_TAG_variable^M
flags: 0x2 [IS_STATIC]^M
DIE offset: 0xcb^M
parent: ((cooked_index_entry *) 0x7f01f00040a0) [ns]^M
...
which allows us to verify that the entry has a parent.
After commit 8f258a6c97 ("[gdb/symtab] Dump qualified name of
cooked_index_entry") that's no longer necessary.
Simplify this by checking for ns::v instead.
While we're at it, also fix the test-case for target boards readnow,
cc-with-gdb-index and cc-with-debug-names.
Tested on x86_64-linux.
This commit is contained in:
@@ -16,6 +16,8 @@
|
||||
# Check that the DWARF reader works with a a DW_AT_specification that
|
||||
# refers to a later DIE.
|
||||
|
||||
require !readnow
|
||||
|
||||
load_lib dwarf.exp
|
||||
|
||||
# This test can only be run on targets which support DWARF-2 and use gas.
|
||||
@@ -72,31 +74,13 @@ if {[prepare_for_testing "failed to prepare" ${testfile} \
|
||||
return -1
|
||||
}
|
||||
|
||||
set in_v 0
|
||||
gdb_test_multiple "maint print objfiles" "v has a parent" {
|
||||
-re "^ *\\\[\[0-9\]\\\] *\\(\\(cooked_index_entry\[^\r\n\]*" {
|
||||
set in_v 0
|
||||
exp_continue
|
||||
}
|
||||
-re "^ *name: *v\[\r\n\]*" {
|
||||
set in_v 1
|
||||
exp_continue
|
||||
}
|
||||
-re "^ *parent: *\\(\\(cooked_index_entry \\*\\) (0|$hex)\\)" {
|
||||
if {$in_v} {
|
||||
if {$expect_out(1,string) == "0"} {
|
||||
fail $gdb_test_name
|
||||
} else {
|
||||
pass $gdb_test_name
|
||||
}
|
||||
set in_v 0
|
||||
}
|
||||
exp_continue
|
||||
}
|
||||
-re "^\[^\r\n\]*\[\r\n\]+" {
|
||||
exp_continue
|
||||
}
|
||||
-re "$gdb_prompt " {
|
||||
# Done.
|
||||
}
|
||||
}
|
||||
require {string equal [have_index $binfile] ""}
|
||||
|
||||
set re_ws "\[ \t\]"
|
||||
|
||||
gdb_test_lines "maint print objfiles" \
|
||||
"v has a parent" \
|
||||
[multi_line \
|
||||
"" \
|
||||
"$re_ws+qualified:$re_ws+ns::v" \
|
||||
".*"]
|
||||
|
||||
Reference in New Issue
Block a user