diff options
author | Tom de Vries <tdevries@suse.de> | 2021-11-19 15:55:16 +0100 |
---|---|---|
committer | Tom de Vries <tdevries@suse.de> | 2021-11-19 15:55:16 +0100 |
commit | f2f38377e5170839927106564d6f939290a2cd67 (patch) | |
tree | e091b5b51abc759a0d8448f6a3c6b42456529fe1 /gdb/testsuite/gdb.mi/mi-var-rtti.exp | |
parent | a5ac8e7fa3b9c418b6d14ae9d6b0e2e128733ce7 (diff) | |
download | gdb-f2f38377e5170839927106564d6f939290a2cd67.zip gdb-f2f38377e5170839927106564d6f939290a2cd67.tar.gz gdb-f2f38377e5170839927106564d6f939290a2cd67.tar.bz2 |
[gdb/testsuite] Handle runto fail in gdb.mi/mi-var-cp.exp
On OBS I ran into:
...
PASS: gdb.mi/mi-var-cp.exp: run to mi-var-cp.cc:81 (set breakpoint)
UNRESOLVED: gdb.mi/mi-var-cp.exp: unable to start target
...
followed by 81 FAILs and two more UNRESOLVEDs.
I didn't manage to reproduce this, but I did notice that the initial
problem causing the UNRESOLVED caused all subsequent UNRESOLVEDs and FAILs.
I emulated the problem by commenting out the send_gdb "run\n" in
mi_run_cmd_full.
Fix this by:
- handling mi_run_cmd failure in mi_get_inline_test
- handling mi_run_inline_test failure in gdb.mi/mi-var-cp.exp, and
other test-cases using mi_get_inline_test
Tested on x86_64-linux.
Diffstat (limited to 'gdb/testsuite/gdb.mi/mi-var-rtti.exp')
-rw-r--r-- | gdb/testsuite/gdb.mi/mi-var-rtti.exp | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/gdb/testsuite/gdb.mi/mi-var-rtti.exp b/gdb/testsuite/gdb.mi/mi-var-rtti.exp index b574e5c..a0a2e13 100644 --- a/gdb/testsuite/gdb.mi/mi-var-rtti.exp +++ b/gdb/testsuite/gdb.mi/mi-var-rtti.exp @@ -109,13 +109,21 @@ proc check_new_derived_with_rtti {var_name var_type testname} { "delete varobj for ${var_name} (with RTTI) in $testname" } -mi_run_inline_test use_rtti_for_ptr -mi_run_inline_test use_rtti_for_ref -mi_run_inline_test use_rtti_for_ptr_child -mi_run_inline_test use_rtti_for_ref_child -mi_run_inline_test use_rtti_with_multiple_inheritence -mi_run_inline_test type_update_when_use_rtti -mi_run_inline_test skip_type_update_when_not_use_rtti +set inline_tests { + use_rtti_for_ptr + use_rtti_for_ref + use_rtti_for_ptr_child + use_rtti_for_ref_child + use_rtti_with_multiple_inheritence + type_update_when_use_rtti + skip_type_update_when_not_use_rtti +} + +foreach inline_test $inline_tests { + if { [mi_run_inline_test $inline_test] < 0 } { + return -1 + } +} mi_gdb_exit return 0 |