diff options
author | Tom de Vries <tdevries@suse.de> | 2023-03-22 09:37:41 +0100 |
---|---|---|
committer | Tom de Vries <tdevries@suse.de> | 2023-03-22 09:37:41 +0100 |
commit | 14662762048c2519af25b0028a091097d7610ccc (patch) | |
tree | 95b130a8cfac1da13b13464a547c611248ab09db | |
parent | 722c45960343adfadb41c0d154c4d43611828e32 (diff) | |
download | gdb-14662762048c2519af25b0028a091097d7610ccc.zip gdb-14662762048c2519af25b0028a091097d7610ccc.tar.gz gdb-14662762048c2519af25b0028a091097d7610ccc.tar.bz2 |
[gdb/testsuite] Fix gdb.cp/annota{2,3}.exp for native-extended-gdbserver
When running test-cases gdb.cp/annota{2,3}.exp with target board
native-extended-gdbserver, we run into a few FAILs, due to the test-cases
trying to match inferior output together with gdb output.
Fix this by ignoring the inferior output in this case.
Tested on x86_64-linux.
-rw-r--r-- | gdb/testsuite/gdb.cp/annota2.exp | 15 | ||||
-rw-r--r-- | gdb/testsuite/gdb.cp/annota3.exp | 25 |
2 files changed, 30 insertions, 10 deletions
diff --git a/gdb/testsuite/gdb.cp/annota2.exp b/gdb/testsuite/gdb.cp/annota2.exp index 64adbbd..506817b 100644 --- a/gdb/testsuite/gdb.cp/annota2.exp +++ b/gdb/testsuite/gdb.cp/annota2.exp @@ -126,13 +126,24 @@ gdb_test_multiple "print a" "print class" { # `a.x is 1' is asynchronous regarding to `frames-invalid'. # +if { $gdb_spawn_id == $inferior_spawn_id } { + set match_output \ + [multi_line \ + "\($frames_invalid\)*a.x is 1" \ + "\($frames_invalid\)*"] +} else { + # Usually we'd handle this using gdb_test_stdio, but that looks too + # complicated in combination with annotations, so just ignore the inferior + # output. + set match_output "\($frames_invalid\)*" +} + set pat [multi_line "" \ "\032\032post-prompt" \ "Continuing." \ "" \ "\032\032starting" \ - "\(${frames_invalid}\)*a.x is 1" \ - "\(${frames_invalid}\)*"\ + $match_output \ "\032\032exited 0" \ "$inferior_exited_re normally." \ "" \ diff --git a/gdb/testsuite/gdb.cp/annota3.exp b/gdb/testsuite/gdb.cp/annota3.exp index 788bda7..7b85c84 100644 --- a/gdb/testsuite/gdb.cp/annota3.exp +++ b/gdb/testsuite/gdb.cp/annota3.exp @@ -95,14 +95,23 @@ gdb_expect_list "print class" "$gdb_prompt$" { # annotate-exited # send_gdb "continue\n" -gdb_expect_list "continue to exit" "$gdb_prompt$" [concat { - "\r\n\032\032post-prompt\r\n" - "Continuing.\r\n" - "\r\n\032\032starting\r\n" - "a.x is 1\r\n" - "\r\n\032\032exited 0\r\n"} [list "$inferior_exited_re normally.\r\n"] { - "\r\n\032\032stopped\r\n" -}] + +set el {} +lappend el "\r\n\032\032post-prompt\r\n" +lappend el "Continuing.\r\n" +lappend el "\r\n\032\032starting\r\n" +if { $gdb_spawn_id == $inferior_spawn_id } { + lappend el "a.x is 1\r\n" +} else { + # Usually we'd handle this using gdb_test_stdio, but that looks too + # complicated in combination with annotations, so just ignore the inferior + # output. +} +lappend el "\r\n\032\032exited 0\r\n" +lappend el "$inferior_exited_re normally.\r\n" +lappend el "\r\n\032\032stopped\r\n" + +gdb_expect_list "continue to exit" "$gdb_prompt$" $el # # delete all breakpoints |