diff options
author | Tom de Vries <tdevries@suse.de> | 2021-08-02 15:31:51 +0200 |
---|---|---|
committer | Tom de Vries <tdevries@suse.de> | 2021-08-02 15:31:51 +0200 |
commit | f7ded54b34dcfb2a8e7088c0045f835aab75963a (patch) | |
tree | 7c2446bee85820e383e3a3d351b4404416ebe56a /gdb | |
parent | 1df42e90836a542aa16b2f89b22810d264bb3882 (diff) | |
download | binutils-f7ded54b34dcfb2a8e7088c0045f835aab75963a.zip binutils-f7ded54b34dcfb2a8e7088c0045f835aab75963a.tar.gz binutils-f7ded54b34dcfb2a8e7088c0045f835aab75963a.tar.bz2 |
[gdb/testsuite] Fix gdb.dwarf2/dw2-using-debug-str.exp with cc-with-gdb-index
When running with target board cc-with-gdb-index, we run into:
...
(gdb) file dw2-using-debug-str-no-debug-str^M
Reading symbols from dw2-using-debug-str-no-debug-str...^M
Dwarf Error: DW_FORM_strp used without required section^M
(gdb) FAIL: gdb.dwarf2/dw2-using-debug-str.exp: file dw2-using-debug-str
...
The test expects the dwarf error, but has no matching pattern for the entire
output.
Fix this by updating the regexp.
Tested on x86_64-linux.
gdb/testsuite/ChangeLog:
2021-08-02 Tom de Vries <tdevries@suse.de>
* gdb.dwarf2/dw2-using-debug-str.exp: Update regexp to match
cc-with-gdb-index output.
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/testsuite/gdb.dwarf2/dw2-using-debug-str.exp | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/gdb/testsuite/gdb.dwarf2/dw2-using-debug-str.exp b/gdb/testsuite/gdb.dwarf2/dw2-using-debug-str.exp index 62febdb..09f58d3 100644 --- a/gdb/testsuite/gdb.dwarf2/dw2-using-debug-str.exp +++ b/gdb/testsuite/gdb.dwarf2/dw2-using-debug-str.exp @@ -115,28 +115,32 @@ if {[run_on_host "objcopy" [gdb_find_objcopy] "$args"]} { # executable we're going to get an error, which we check for below. clean_restart +set line1 "Reading symbols from \[^\r\n\]+" +set dwarf_error "Dwarf Error: DW_FORM_strp used without required section" + # This pattern is hit when GDB does not use -readnow (i.e. the default # behaviour). set pattern1 \ [multi_line \ - "Reading symbols from \[^\r\n\]+" \ - "Dwarf Error: DW_FORM_strp used without required section" \ + $line1 \ + $dwarf_error \ "\\(No debugging symbols \[^\r\n\]+\\)"] # This pattern is hit when GDB does use -readnow (e.g. running with # --target_board=readnow). set pattern2 \ [multi_line \ - "Reading symbols from \[^\r\n\]+" \ + $line1 \ "Expanding full symbols from \[^\r\n\]+" \ - "Dwarf Error: DW_FORM_strp used without required section"] + $dwarf_error] + +# This pattern is hit when gcc adds an index (e.g. running with +# --target_board=cc-with-gdb-index). +set pattern3 \ + [multi_line \ + $line1 \ + $dwarf_error] # Load the executable, we expect an error from the DWARF parser. -gdb_test_multiple "file $binfile_no_debug_str" "file $testfile" { - -wrap -re $pattern1 { - pass $gdb_test_name - } - -re -wrap "$pattern2" { - pass $gdb_test_name - } -} +gdb_test "file $binfile_no_debug_str" "($pattern1|$pattern2|$pattern3)" \ + "file $testfile" |