[gdb/testsuite] Fix dw2-ranges-base.exp FAIL with lib debuginfo
authorTom de Vries <tdevries@suse.de>
Thu, 12 Mar 2020 10:58:20 +0000 (11:58 +0100)
committerTom de Vries <tdevries@suse.de>
Thu, 12 Mar 2020 10:58:20 +0000 (11:58 +0100)
When running test-case gdb.dwarf2/dw2-ranges-base.exp with debuginfo for
various libs installed, I run into:
...
(gdb) maint info line-table^M
  ...
objfile: /usr/lib/debug/lib64/ld-2.26.so-2.26-lp151.18.7.x86_64.debug \
  ((struct objfile *) 0x1a9d7f0)^M
compunit_symtab: ((struct compunit_symtab *) 0x2061090)^M
symtab: /usr/src/debug/glibc-2.26-lp151.18.7.x86_64/sysdeps/generic/\
  dl-fcntl.h ((struct symtab *) 0x2182660)^M
linetable: ((struct linetable *) 0x0):^M
No line table.^M
(gdb) FAIL: gdb.dwarf2/dw2-ranges-base.exp: count END markers in line table
...

The test-case intends to count 3 END markers in the line table for
gdb.dwarf2/dw2-ranges-base.c:
...
symtab: /data/gdb_versions/devel/binutils-gdb.git/gdb/testsuite/gdb.dwarf2/\
  dw2-ranges-base.c ((struct symtab *) 0x2a7e8c0)^M
linetable: ((struct linetable *) 0x2a7ea60):^M
INDEX    LINE ADDRESS IS-STMT^M
0          31 0x00000000004004a7 Y^M
1          21 0x00000000004004ae Y^M
2         END 0x00000000004004ae Y^M
3          11 0x00000000004004ba Y^M
4         END 0x00000000004004ba Y^M
5         END 0x00000000004004c6 Y^M
...
but ends up counting 70+ END markers for all line tables.

Fix this by limiting the line tables emitted by the maint info line-table
command.

Tested on x86_64-linux.

gdb/testsuite/ChangeLog:

2020-03-12  Tom de Vries  <tdevries@suse.de>

* gdb.dwarf2/dw2-ranges-base.exp: Limit "maint info line-table" to
gdb.dwarf2/dw2-ranges-base.c.

gdb/testsuite/ChangeLog
gdb/testsuite/gdb.dwarf2/dw2-ranges-base.exp

index 7e9e490c61ea96783c33e988199d2f258045da18..5b67cb1d580166bb0ea1df2f08c8205ae63633dd 100644 (file)
@@ -1,3 +1,8 @@
+2020-03-12  Tom de Vries  <tdevries@suse.de>
+
+       * gdb.dwarf2/dw2-ranges-base.exp: Limit "maint info line-table" to
+       gdb.dwarf2/dw2-ranges-base.c.
+
 2020-03-12  Tom de Vries  <tdevries@suse.de>
 
        * gdb.linespec/explicit.exp: Fix "complete non-unique file name" test
index 7f7301502ab1c4fb8355f2e37f5ed7e6cc1fbe69..c1a3ab155fdf862759affc28b662abf5f45d7043 100644 (file)
@@ -144,7 +144,7 @@ gdb_test "info line frame3" \
 
 # Ensure that the line table correctly tracks the end of sequence markers.
 set end_seq_count 0
-gdb_test_multiple "maint info line-table" \
+gdb_test_multiple "maint info line-table gdb.dwarf2/dw2-ranges-base.c" \
     "count END markers in line table" {
        -re "^$decimal\[ \t\]+$decimal\[ \t\]+$hex\(\[ \t\]+Y\)?\r\n" {
            exp_continue