diff options
author | Tom de Vries <tdevries@suse.de> | 2023-03-24 10:45:37 +0100 |
---|---|---|
committer | Tom de Vries <tdevries@suse.de> | 2023-03-24 10:45:37 +0100 |
commit | c569a946f6925d3f210c3eaf74dcda56843350ef (patch) | |
tree | 810910c33bbc22a669a7d72df325cc48f0923e1a | |
parent | 1985d8cb7048bcfce60b59cfe219d3b09bda6373 (diff) | |
download | binutils-c569a946f6925d3f210c3eaf74dcda56843350ef.zip binutils-c569a946f6925d3f210c3eaf74dcda56843350ef.tar.gz binutils-c569a946f6925d3f210c3eaf74dcda56843350ef.tar.bz2 |
[gdb/testsuite] Fix unbalanced quotes in mi_expect_stop argument
In proc mi_expect_stop there's a proc argument reason that's handled like so:
...
set r "reason=\"$reason\","
...
That's fine for say:
...
set reason "foo"
...
for which this evaluates to:
...
set r "reason=\"foo\","
...
But there are more complex uses, for instance:
...
set reason "breakpoint-hit\",disp=\"keep\",bkptno=\"$decimal"
...
which evaluates to:
...
set r "\"breakpoint-hit\",disp=\"keep\",bkptno=\"$decimal\""
...
Note how in this reason argument, the first two '\"' seems to form a pair
surrounding ',disp=', which is not the case, which is confusing.
Fix this by only adding the quotes in mi_expect_stop if the string doesn't
already contain quotes, such that we have the more readable:
...
set reason "\"breakpoint-hit\",disp=\"keep\",bkptno=\"$decimal\""
...
Tested on x86_64-linux.
-rw-r--r-- | gdb/testsuite/gdb.ada/mi_catch_assert.exp | 2 | ||||
-rw-r--r-- | gdb/testsuite/gdb.ada/mi_catch_ex.exp | 8 | ||||
-rw-r--r-- | gdb/testsuite/gdb.ada/mi_catch_ex_hand.exp | 4 | ||||
-rw-r--r-- | gdb/testsuite/gdb.ada/mi_ex_cond.exp | 2 | ||||
-rw-r--r-- | gdb/testsuite/lib/mi-support.exp | 6 |
5 files changed, 13 insertions, 9 deletions
diff --git a/gdb/testsuite/gdb.ada/mi_catch_assert.exp b/gdb/testsuite/gdb.ada/mi_catch_assert.exp index e0d5439..c3673fa 100644 --- a/gdb/testsuite/gdb.ada/mi_catch_assert.exp +++ b/gdb/testsuite/gdb.ada/mi_catch_assert.exp @@ -79,7 +79,7 @@ mi_gdb_test "-catch-assert -c \"Global_Var = 2\"" \ set bp_location [gdb_get_line_number "STOP" ${testdir}/bla.adb] mi_execute_to "exec-continue" \ - "breakpoint-hit\",disp=\"keep\",bkptno=\"$decimal" \ + "\"breakpoint-hit\",disp=\"keep\",bkptno=\"$decimal\"" \ "bla" "" ".*" "$bp_location" \ ".*" \ "continue to assert failure catchpoint hit" diff --git a/gdb/testsuite/gdb.ada/mi_catch_ex.exp b/gdb/testsuite/gdb.ada/mi_catch_ex.exp index 6a0f94a..d0dfbd5 100644 --- a/gdb/testsuite/gdb.ada/mi_catch_ex.exp +++ b/gdb/testsuite/gdb.ada/mi_catch_ex.exp @@ -92,7 +92,7 @@ proc continue_to_exception { exception_name exception_message test } { # Now MI stream output. mi_expect_stop \ - "breakpoint-hit\",disp=\"keep\",bkptno=\"$any_nb\",exception-name=\"$exception_name\(\",exception-message=\"$exception_message\)?" \ + "\"breakpoint-hit\",disp=\"keep\",bkptno=\"$any_nb\",exception-name=\"$exception_name\(\",exception-message=\"$exception_message\)?\"" \ "foo" "" ".*" ".*" \ ".*" \ $test @@ -140,19 +140,19 @@ mi_gdb_test "-catch-exception -u" \ "catch unhandled exceptions" mi_execute_to "exec-continue" \ - "breakpoint-hit\",disp=\"keep\",bkptno=\"$any_nb\",exception-name=\"PROGRAM_ERROR(\",exception-message=\"foo\\.adb:$decimal explicit raise)?" \ + "\"breakpoint-hit\",disp=\"keep\",bkptno=\"$any_nb\",exception-name=\"PROGRAM_ERROR(\",exception-message=\"foo\\.adb:$decimal explicit raise)?\"" \ "foo" "" ".*" ".*" \ ".*" \ "continue to exception catchpoint hit" mi_execute_to "exec-continue" \ - "breakpoint-hit\",disp=\"keep\",bkptno=\"$any_nb" \ + "\"breakpoint-hit\",disp=\"keep\",bkptno=\"$any_nb\"" \ "foo" "" ".*" ".*" \ ".*" \ "continue to assert failure catchpoint hit" mi_execute_to "exec-continue" \ - "breakpoint-hit\",disp=\"keep\",bkptno=\"$any_nb\",exception-name=\"CONSTRAINT_ERROR" \ + "\"breakpoint-hit\",disp=\"keep\",bkptno=\"$any_nb\",exception-name=\"CONSTRAINT_ERROR\"" \ "foo" "" ".*" ".*" \ ".*" \ "continue to unhandled exception catchpoint hit" diff --git a/gdb/testsuite/gdb.ada/mi_catch_ex_hand.exp b/gdb/testsuite/gdb.ada/mi_catch_ex_hand.exp index 82c7b2a..2cd175f 100644 --- a/gdb/testsuite/gdb.ada/mi_catch_ex_hand.exp +++ b/gdb/testsuite/gdb.ada/mi_catch_ex_hand.exp @@ -82,7 +82,7 @@ proc continue_to_exception_handler { test line } { # Now MI stream output. mi_expect_stop \ - "breakpoint-hit\",disp=\"keep\",bkptno=\"$decimal\",exception-name=\"exception\"?" \ + "\"breakpoint-hit\",disp=\"keep\",bkptno=\"$decimal\",exception-name=\"exception\"" \ "foo" "" ".*" "$line" \ ".*" \ $test @@ -125,7 +125,7 @@ mi_gdb_test "-catch-handlers -e Constraint_Error" \ "catch Constraint_Error" mi_execute_to "exec-continue" \ - "breakpoint-hit\",disp=\"keep\",bkptno=\"$decimal\",exception-name=\"exception\"?" \ + "\"breakpoint-hit\",disp=\"keep\",bkptno=\"$decimal\",exception-name=\"exception\"" \ "foo" "" ".*" "$bp_ce_location" \ ".*" \ "continue to exception catchpoint hit" diff --git a/gdb/testsuite/gdb.ada/mi_ex_cond.exp b/gdb/testsuite/gdb.ada/mi_ex_cond.exp index f41b633..54aa6b5 100644 --- a/gdb/testsuite/gdb.ada/mi_ex_cond.exp +++ b/gdb/testsuite/gdb.ada/mi_ex_cond.exp @@ -77,7 +77,7 @@ mi_gdb_test "-catch-exception -c \"i = 2\" -e constraint_error" \ mi_run_cmd mi_expect_stop \ - "breakpoint-hit\",disp=\"keep\",bkptno=\"$any_nb\",exception-name=\"CONSTRAINT_ERROR(\",exception-message=\"foo\\.adb:$decimal explicit raise)?" \ + "\"breakpoint-hit\",disp=\"keep\",bkptno=\"$any_nb\",exception-name=\"CONSTRAINT_ERROR(\",exception-message=\"foo\\.adb:$decimal explicit raise)?\"" \ "foo" "" ".*" ".*" \ ".*" \ "run to exception catchpoint hit" diff --git a/gdb/testsuite/lib/mi-support.exp b/gdb/testsuite/lib/mi-support.exp index 3c2dd2f..c738b7b 100644 --- a/gdb/testsuite/lib/mi-support.exp +++ b/gdb/testsuite/lib/mi-support.exp @@ -1267,7 +1267,11 @@ proc mi_expect_stop { reason func args file line extra test } { set r "" if { $reason != "" } { - set r "reason=\"$reason\"," + if { [regexp {"} $reason] } { + set r "reason=$reason," + } else { + set r "reason=\"$reason\"," + } } |