[PATCH][gdb/testsuite] Fix ERROR in gdb.dwarf2/dw2-out-of-range-end-of-seq.exp

Tom de Vries tdevries@suse.de
Tue Jan 26 18:02:59 GMT 2021


Hi,

When running test-case gdb.dwarf2/dw2-out-of-range-end-of-seq.exp on a
system with debug packages installed, I run into:
...
(gdb) maint info line-table^M
  ... <lots of output> ...
ERROR: internal buffer is full.
UNRESOLVED: gdb.dwarf2/dw2-out-of-range-end-of-seq.exp: \
  END with address 1 eliminated
...

Fix this by limiting the output of the command using a regexp.

I also noticed that when making the regexp match nothing, meaning
the command has no output, the test didn't FAIL.  Fixed this by adding a
PASS pattern.

I also noticed that the FAIL pattern didn't work with -m32, fixed that as
well.

Tested on x86_64-linux.

Any comments?

Thanks,
- Tom

[gdb/testsuite] Fix ERROR in gdb.dwarf2/dw2-out-of-range-end-of-seq.exp

gdb/testsuite/ChangeLog:

2021-01-26  Tom de Vries  <tdevries@suse.de>

	* gdb.dwarf2/dw2-out-of-range-end-of-seq.exp: Add regexp to
	"maint info line-table".  Make PASS pattern more specific.  Make
	FAIL pattern work for -m32.

---
 gdb/testsuite/gdb.dwarf2/dw2-out-of-range-end-of-seq.exp | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/gdb/testsuite/gdb.dwarf2/dw2-out-of-range-end-of-seq.exp b/gdb/testsuite/gdb.dwarf2/dw2-out-of-range-end-of-seq.exp
index 7a32a01389c..42cfd0b61ec 100644
--- a/gdb/testsuite/gdb.dwarf2/dw2-out-of-range-end-of-seq.exp
+++ b/gdb/testsuite/gdb.dwarf2/dw2-out-of-range-end-of-seq.exp
@@ -84,11 +84,12 @@ if ![runto_main] {
     return -1
 }
 
-gdb_test_multiple "maint info line-table" "END with address 1 eliminated" {
-    -re -wrap "END *0x0*1 Y \r\n.*" {
+set test "END with address 1 eliminated"
+gdb_test_multiple "maint info line-table $srcfile$" $test {
+    -re -wrap "END *0x0*1 *Y \r\n.*" {
 	fail $gdb_test_name
     }
-    -re -wrap "" {
+    -re -wrap "END *$hex *Y " {
 	pass $gdb_test_name
     }
 }


More information about the Gdb-patches mailing list