gdb/testsuite: adjust test cases to previous "maintenance info line-table" change
Commit Message
Commit 904d9b02a185 ("gdb: make "maintenance info line-table" show
relocated addresses again") changed the format of that command, but
failed to adjust some test cases that relied on it. This patch fixes
it.
The failures fixed are:
FAIL: gdb.base/maint.exp: maint info line-table w/o a file name
FAIL: gdb.dwarf2/dw2-out-of-range-end-of-seq.exp: END with address 1 eliminated
FAIL: gdb.dwarf2/dw2-ranges-base.exp: count END markers in line table
Change-Id: I946580d5e100f1beeac99a9e90d7819c6bb4ac6c
---
gdb/testsuite/gdb.base/maint.exp | 8 ++++----
gdb/testsuite/gdb.dwarf2/dw2-out-of-range-end-of-seq.exp | 4 ++--
gdb/testsuite/gdb.dwarf2/dw2-ranges-base.exp | 6 +++---
3 files changed, 9 insertions(+), 9 deletions(-)
base-commit: bf3f6c02d73f9823b8cb4f59524f29fbbfb6126d
Comments
On 3/22/23 16:17, Simon Marchi via Gdb-patches wrote:
> Commit 904d9b02a185 ("gdb: make "maintenance info line-table" show
> relocated addresses again") changed the format of that command, but
> failed to adjust some test cases that relied on it. This patch fixes
> it.
>
> The failures fixed are:
>
> FAIL: gdb.base/maint.exp: maint info line-table w/o a file name
> FAIL: gdb.dwarf2/dw2-out-of-range-end-of-seq.exp: END with address 1 eliminated
> FAIL: gdb.dwarf2/dw2-ranges-base.exp: count END markers in line table
>
Hi,
I did a clean build and test run, and confirmed that these are the only
three regressions.
Then I applied this patch, and verified that if fixes the regressions.
LGTM.
Thanks,
- Tom
> Change-Id: I946580d5e100f1beeac99a9e90d7819c6bb4ac6c
> ---
> gdb/testsuite/gdb.base/maint.exp | 8 ++++----
> gdb/testsuite/gdb.dwarf2/dw2-out-of-range-end-of-seq.exp | 4 ++--
> gdb/testsuite/gdb.dwarf2/dw2-ranges-base.exp | 6 +++---
> 3 files changed, 9 insertions(+), 9 deletions(-)
>
> diff --git a/gdb/testsuite/gdb.base/maint.exp b/gdb/testsuite/gdb.base/maint.exp
> index 98e23b40ef65..c05d0987e7fa 100644
> --- a/gdb/testsuite/gdb.base/maint.exp
> +++ b/gdb/testsuite/gdb.base/maint.exp
> @@ -386,11 +386,11 @@ gdb_test "maint" \
> set saw_srcfile 0
> gdb_test_multiple "maint info line-table" \
> "maint info line-table w/o a file name" {
> - -re "symtab: \[^\n\r\]+${srcfile} \\(\\(struct symtab \\*\\) $hex\\)\r\nlinetable: \\(\\(struct linetable \\*\\) $hex\\):\r\nINDEX\[ \t\]+LINE\[ \t\]+ADDRESS\[^\r\n\]*" {
> + -re "symtab: \[^\n\r\]+${srcfile} \\(\\(struct symtab \\*\\) $hex\\)\r\nlinetable: \\(\\(struct linetable \\*\\) $hex\\):\r\nINDEX\[ \t\]+LINE\[ \t\]+REL-ADDRESS\[ \t\]+UNREL-ADDRESS\[^\r\n\]*" {
> set saw_srcfile 1
> exp_continue
> }
> - -re "symtab: \[^\n\r\]+ \\(\\(struct symtab \\*\\) $hex\\)\r\nlinetable: \\(\\(struct linetable \\*\\) $hex\\):\r\nINDEX\[ \t\]+LINE\[ \t\]+ADDRESS\[^\r\n\]*" {
> + -re "symtab: \[^\n\r\]+ \\(\\(struct symtab \\*\\) $hex\\)\r\nlinetable: \\(\\(struct linetable \\*\\) $hex\\):\r\nINDEX\[ \t\]+LINE\[ \t\]+REL-ADDRESS\[ \t\]+UNREL-ADDRESS\[^\r\n\]*" {
> # Match each symtab to avoid overflowing expect's buffer.
> exp_continue
> }
> @@ -398,7 +398,7 @@ gdb_test_multiple "maint info line-table" \
> # For symtabs with no linetable.
> exp_continue
> }
> - -re "^$decimal\[ \t\]+$decimal\[ \t\]+$hex\[^\r\n\]*\r\n" {
> + -re "^$decimal\[ \t\]+$decimal\[ \t\]+$hex\[ \t\]+$hex\[^\r\n\]*\r\n" {
> # Line table entries can be long too:
> #
> # INDEX LINE ADDRESS
> @@ -416,7 +416,7 @@ gdb_test_multiple "maint info line-table" \
> # Match each line to avoid overflowing expect's buffer.
> exp_continue
> }
> - -re "^$decimal\[ \t\]+END\[ \t\]+$hex\[^\r\n\]*\r\n" {
> + -re "^$decimal\[ \t\]+END\[ \t\]+$hex\[ \t\]+$hex\[^\r\n\]*\r\n" {
> # Matches an end marker in the above.
> exp_continue
> }
> 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 c0a33b95b653..bd3ea5b5d548 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
> @@ -85,10 +85,10 @@ if ![runto_main] {
>
> set test "END with address 1 eliminated"
> gdb_test_multiple "maint info line-table $srcfile$" $test {
> - -re -wrap "END *0x0*1 *Y *\r\n.*" {
> + -re -wrap "END *0x0*1 *$hex *Y *\r\n.*" {
> fail $gdb_test_name
> }
> - -re -wrap "END *$hex *Y *" {
> + -re -wrap "END *$hex *$hex *Y *" {
> pass $gdb_test_name
> }
> }
> diff --git a/gdb/testsuite/gdb.dwarf2/dw2-ranges-base.exp b/gdb/testsuite/gdb.dwarf2/dw2-ranges-base.exp
> index 147e943361e0..ee274ee128c4 100644
> --- a/gdb/testsuite/gdb.dwarf2/dw2-ranges-base.exp
> +++ b/gdb/testsuite/gdb.dwarf2/dw2-ranges-base.exp
> @@ -145,7 +145,7 @@ set prev -1
> set seq_count 0
> 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" {
> + -re "^$decimal\[ \t\]+$decimal\[ \t\]+$hex\[ \t\]+$hex\(\[ \t\]+Y\)? *\r\n" {
> if { $prev != -1 } {
> gdb_assert "$prev == 1" \
> "prev of normal entry at $seq_count is end marker"
> @@ -154,7 +154,7 @@ gdb_test_multiple "maint info line-table gdb.dwarf2/dw2-ranges-base.c" \
> incr seq_count
> exp_continue
> }
> - -re "^$decimal\[ \t\]+END\[ \t\]+$hex\(\[ \t\]+Y\)? *\r\n" {
> + -re "^$decimal\[ \t\]+END\[ \t\]+$hex\[ \t\]+$hex\(\[ \t\]+Y\)? *\r\n" {
> if { $prev != -1 } {
> gdb_assert "$prev == 0" \
> "prev of end marker at $seq_count is normal entry"
> @@ -174,7 +174,7 @@ gdb_test_multiple "maint info line-table gdb.dwarf2/dw2-ranges-base.c" \
> -re ".*linetable: \\(\\(struct linetable \\*\\) 0x0\\):\r\nNo line table.\r\n" {
> exp_continue
> }
> - -re ".*linetable: \\(\\(struct linetable \\*\\) $hex\\):\r\nINDEX\[ \t\]+LINE\[ \t\]+ADDRESS\[ \t\]+IS-STMT\[ \t\]PROLOGUE-END *\r\n" {
> + -re ".*linetable: \\(\\(struct linetable \\*\\) $hex\\):\r\nINDEX\[ \t\]+LINE\[ \t\]+REL-ADDRESS\[ \t\]+UNREL-ADDRESS\[ \t\]+IS-STMT\[ \t\]PROLOGUE-END *\r\n" {
> exp_continue
> }
> }
>
> base-commit: bf3f6c02d73f9823b8cb4f59524f29fbbfb6126d
> I did a clean build and test run, and confirmed that these are the only three regressions.
>
> Then I applied this patch, and verified that if fixes the regressions.
>
> LGTM.
>
> Thanks,
> - Tom
Thanks, pushed.
Simon
@@ -386,11 +386,11 @@ gdb_test "maint" \
set saw_srcfile 0
gdb_test_multiple "maint info line-table" \
"maint info line-table w/o a file name" {
- -re "symtab: \[^\n\r\]+${srcfile} \\(\\(struct symtab \\*\\) $hex\\)\r\nlinetable: \\(\\(struct linetable \\*\\) $hex\\):\r\nINDEX\[ \t\]+LINE\[ \t\]+ADDRESS\[^\r\n\]*" {
+ -re "symtab: \[^\n\r\]+${srcfile} \\(\\(struct symtab \\*\\) $hex\\)\r\nlinetable: \\(\\(struct linetable \\*\\) $hex\\):\r\nINDEX\[ \t\]+LINE\[ \t\]+REL-ADDRESS\[ \t\]+UNREL-ADDRESS\[^\r\n\]*" {
set saw_srcfile 1
exp_continue
}
- -re "symtab: \[^\n\r\]+ \\(\\(struct symtab \\*\\) $hex\\)\r\nlinetable: \\(\\(struct linetable \\*\\) $hex\\):\r\nINDEX\[ \t\]+LINE\[ \t\]+ADDRESS\[^\r\n\]*" {
+ -re "symtab: \[^\n\r\]+ \\(\\(struct symtab \\*\\) $hex\\)\r\nlinetable: \\(\\(struct linetable \\*\\) $hex\\):\r\nINDEX\[ \t\]+LINE\[ \t\]+REL-ADDRESS\[ \t\]+UNREL-ADDRESS\[^\r\n\]*" {
# Match each symtab to avoid overflowing expect's buffer.
exp_continue
}
@@ -398,7 +398,7 @@ gdb_test_multiple "maint info line-table" \
# For symtabs with no linetable.
exp_continue
}
- -re "^$decimal\[ \t\]+$decimal\[ \t\]+$hex\[^\r\n\]*\r\n" {
+ -re "^$decimal\[ \t\]+$decimal\[ \t\]+$hex\[ \t\]+$hex\[^\r\n\]*\r\n" {
# Line table entries can be long too:
#
# INDEX LINE ADDRESS
@@ -416,7 +416,7 @@ gdb_test_multiple "maint info line-table" \
# Match each line to avoid overflowing expect's buffer.
exp_continue
}
- -re "^$decimal\[ \t\]+END\[ \t\]+$hex\[^\r\n\]*\r\n" {
+ -re "^$decimal\[ \t\]+END\[ \t\]+$hex\[ \t\]+$hex\[^\r\n\]*\r\n" {
# Matches an end marker in the above.
exp_continue
}
@@ -85,10 +85,10 @@ if ![runto_main] {
set test "END with address 1 eliminated"
gdb_test_multiple "maint info line-table $srcfile$" $test {
- -re -wrap "END *0x0*1 *Y *\r\n.*" {
+ -re -wrap "END *0x0*1 *$hex *Y *\r\n.*" {
fail $gdb_test_name
}
- -re -wrap "END *$hex *Y *" {
+ -re -wrap "END *$hex *$hex *Y *" {
pass $gdb_test_name
}
}
@@ -145,7 +145,7 @@ set prev -1
set seq_count 0
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" {
+ -re "^$decimal\[ \t\]+$decimal\[ \t\]+$hex\[ \t\]+$hex\(\[ \t\]+Y\)? *\r\n" {
if { $prev != -1 } {
gdb_assert "$prev == 1" \
"prev of normal entry at $seq_count is end marker"
@@ -154,7 +154,7 @@ gdb_test_multiple "maint info line-table gdb.dwarf2/dw2-ranges-base.c" \
incr seq_count
exp_continue
}
- -re "^$decimal\[ \t\]+END\[ \t\]+$hex\(\[ \t\]+Y\)? *\r\n" {
+ -re "^$decimal\[ \t\]+END\[ \t\]+$hex\[ \t\]+$hex\(\[ \t\]+Y\)? *\r\n" {
if { $prev != -1 } {
gdb_assert "$prev == 0" \
"prev of end marker at $seq_count is normal entry"
@@ -174,7 +174,7 @@ gdb_test_multiple "maint info line-table gdb.dwarf2/dw2-ranges-base.c" \
-re ".*linetable: \\(\\(struct linetable \\*\\) 0x0\\):\r\nNo line table.\r\n" {
exp_continue
}
- -re ".*linetable: \\(\\(struct linetable \\*\\) $hex\\):\r\nINDEX\[ \t\]+LINE\[ \t\]+ADDRESS\[ \t\]+IS-STMT\[ \t\]PROLOGUE-END *\r\n" {
+ -re ".*linetable: \\(\\(struct linetable \\*\\) $hex\\):\r\nINDEX\[ \t\]+LINE\[ \t\]+REL-ADDRESS\[ \t\]+UNREL-ADDRESS\[ \t\]+IS-STMT\[ \t\]PROLOGUE-END *\r\n" {
exp_continue
}
}